Time bar (total: 19.2s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 4 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 5 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 6 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 7 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 8 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 9 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 10 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 11 |
| 9.8% | 9.7% | 90.1% | 0.2% | 0% | 0% | 0% | 12 |
Compiled 20 to 12 computations (40% saved)
| 1.6s | 8256× | body | 256 | valid |
| 56.0ms | 498× | body | 256 | infinite |
| 2× | egg-herbie |
| 44× | fma-def |
| 22× | +-commutative |
| 12× | *-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 40 | 245 |
| 1 | 69 | 245 |
| 2 | 79 | 245 |
| 0 | 4 | 4 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
2 |
3 |
| Outputs |
|---|
0 |
1 |
2 |
3 |
| Inputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 y.im y.re) (*.f64 x.im x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 x.re x.re))) |
(/.f64 (+.f64 (*.f64 x.re x.im) (*.f64 y.re y.im)) (+.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im))) |
(/.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
| Outputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 x.re y.im (*.f64 y.re x.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 x.re x.re) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 x.re x.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 y.im y.re) (*.f64 x.im x.re)) (+.f64 (*.f64 y.re y.re) (*.f64 x.re x.re))) |
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 y.re y.re (*.f64 x.re x.re))) |
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 y.re y.re))) |
(/.f64 (+.f64 (*.f64 x.re x.im) (*.f64 y.re y.im)) (+.f64 (*.f64 x.im x.im) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 x.im x.im (*.f64 y.im y.im))) |
(/.f64 (fma.f64 x.re x.im (*.f64 y.re y.im)) (fma.f64 y.im y.im (*.f64 x.im x.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im)) (+.f64 (*.f64 y.re y.re) (*.f64 x.im x.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 x.im x.im))) |
(/.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re)) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(/.f64 (fma.f64 x.re y.im (*.f64 y.re x.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
Compiled 23 to 15 computations (34.8% saved)
| 1× | egg-herbie |
| 12× | fma-def |
| 4× | *-commutative |
| 4× | +-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 35 |
| 1 | 20 | 35 |
| 2 | 24 | 35 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Outputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
Compiled 32 to 14 computations (56.3% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 57.5% | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| ▶ | 57.5% | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 36 to 20 computations (44.4% saved)
Found 3 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) |
| ✓ | 99.3% | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
| ✓ | 58.4% | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 49 to 11 computations (77.6% saved)
30 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y.re | @ | inf | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
| 1.0ms | x.re | @ | 0 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 1.0ms | x.im | @ | inf | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 1.0ms | x.re | @ | -inf | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 1.0ms | x.im | @ | 0 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 1× | batch-egg-rewrite |
| 1720× | associate-*r/ |
| 1458× | associate-*l/ |
| 976× | associate-/r* |
| 316× | associate-+l+ |
| 304× | add-sqr-sqrt |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 65 |
| 1 | 285 | 61 |
| 2 | 4080 | 61 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3) 1/3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (*.f64 x.re y.re))) (-.f64 1 (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (*.f64 x.im y.im))) (-.f64 1 (*.f64 x.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (pow.f64 (*.f64 x.re y.re) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 x.im y.im) (exp.f64 (log1p.f64 (*.f64 x.re y.re)))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2))) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) 1) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) 1) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2)) 1) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.im y.im) 2))) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 x.re y.re) 2) 3) (pow.f64 (pow.f64 (*.f64 x.im y.im) 2) 3)) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.re y.re) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.im y.im) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (-.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (*.f64 x.im y.im) 3) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (+.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.re y.re) 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (+.f64 (sqrt.f64 (*.f64 x.im y.im)) (sqrt.f64 (*.f64 x.re y.re)))) (-.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 x.re y.re (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 y.re x.re (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 x.im y.im (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 y.im x.im (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (*.f64 x.re y.re) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (*.f64 x.im y.im) (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (sqrt.f64 (*.f64 x.im y.im)) (sqrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.im)) 2) (cbrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (cbrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (*.f64 y.re y.re))) (-.f64 1 (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (*.f64 y.im y.im))) (-.f64 1 (*.f64 y.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (/.f64 (pow.f64 y.im 4) (+.f64 y.re y.im)) (-.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 y.re y.re) (exp.f64 (log1p.f64 (*.f64 y.im y.im)))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 y.im y.im) (exp.f64 (log1p.f64 (*.f64 y.re y.re)))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (hypot.f64 y.re y.im) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) 1) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) 1) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) 1) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) 1) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) 1) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (hypot.f64 y.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (hypot.f64 y.re y.im)) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y.re 4) (pow.f64 y.re 4)) (*.f64 (pow.f64 y.im 4) (pow.f64 y.im 4))) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 y.re 4) 3) (pow.f64 (pow.f64 y.im 4) 3)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 (pow.f64 y.re 4) (pow.f64 y.re 4)) (+.f64 (*.f64 (pow.f64 y.im 4) (pow.f64 y.im 4)) (*.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y.re 6) (pow.f64 y.re 6)) (*.f64 (pow.f64 y.im 6) (pow.f64 y.im 6))) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (-.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 y.re 6) 3) (pow.f64 (pow.f64 y.im 6) 3)) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (+.f64 (*.f64 (pow.f64 y.re 6) (pow.f64 y.re 6)) (-.f64 (*.f64 (pow.f64 y.im 6) (pow.f64 y.im 6)) (*.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) 1) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (*.f64 (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (+.f64 y.re y.im)) (-.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) 1) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (hypot.f64 y.re y.im) 2) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3) 1/3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 1)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 y.re y.re (*.f64 y.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 y.im y.im (*.f64 y.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (*.f64 y.re y.re) (*.f64 y.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (*.f64 y.im y.im) (*.f64 y.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (cbrt.f64 (pow.f64 y.im 4)) (pow.f64 (cbrt.f64 y.im) 2) (*.f64 y.re y.re)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (cbrt.f64 (pow.f64 y.re 4)) (pow.f64 (cbrt.f64 y.re) 2) (*.f64 y.im y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1366× | associate-/r/ |
| 730× | times-frac |
| 688× | associate-/l* |
| 614× | +-commutative |
| 590× | associate-*r* |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 469 | 11327 |
| 1 | 1218 | 10677 |
| 2 | 6049 | 10677 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(pow.f64 y.im 2) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(pow.f64 y.re 2) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(pow.f64 y.re 2) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(pow.f64 y.re 2) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(pow.f64 y.im 2) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(pow.f64 y.im 2) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 3) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3) 1/3) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re y.re))) (-.f64 1 (*.f64 x.im y.im))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im y.im))) (-.f64 1 (*.f64 x.re y.re))) |
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.re) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(-.f64 (+.f64 (*.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) |
(-.f64 (+.f64 (*.f64 x.im y.im) (exp.f64 (log1p.f64 (*.f64 x.re y.re)))) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(*.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) |
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (*.f64 1 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (*.f64 1 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2))) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) 1) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) 1) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2)) 1) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) |
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.im y.im) 2))) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 x.re y.re) 2) 3) (pow.f64 (pow.f64 (*.f64 x.im y.im) 2) 3)) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.re y.re) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.im y.im) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (-.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (*.f64 x.im y.im) 3) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (+.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.re y.re) 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (+.f64 (sqrt.f64 (*.f64 x.im y.im)) (sqrt.f64 (*.f64 x.re y.re)))) (-.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.im y.im)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3) |
(pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3) |
(sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) |
(log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1)) |
(log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 x.re y.re (*.f64 x.im y.im)) |
(fma.f64 y.re x.re (*.f64 x.im y.im)) |
(fma.f64 x.im y.im (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 x.re y.re)) |
(fma.f64 1 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
(fma.f64 1 (*.f64 x.im y.im) (*.f64 x.re y.re)) |
(fma.f64 (sqrt.f64 (*.f64 x.im y.im)) (sqrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) |
(fma.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.im)) 2) (cbrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (cbrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.re y.re))) (-.f64 1 (*.f64 y.im y.im))) |
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 1) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.im y.im))) (-.f64 1 (*.f64 y.re y.re))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (/.f64 (pow.f64 y.im 4) (+.f64 y.re y.im)) (-.f64 y.re y.im))) |
(-.f64 (+.f64 (*.f64 y.re y.re) (exp.f64 (log1p.f64 (*.f64 y.im y.im)))) 1) |
(-.f64 (+.f64 (*.f64 y.im y.im) (exp.f64 (log1p.f64 (*.f64 y.re y.re)))) 1) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1) |
(*.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (hypot.f64 y.re y.im) (hypot.f64 y.re y.im)) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(*.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(/.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (*.f64 1 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (*.f64 1 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (*.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) 1) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) 1) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) 1) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) 1) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (*.f64 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) 1) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (hypot.f64 y.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (hypot.f64 y.re y.im)) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y.re 4) (pow.f64 y.re 4)) (*.f64 (pow.f64 y.im 4) (pow.f64 y.im 4))) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 y.re 4) 3) (pow.f64 (pow.f64 y.im 4) 3)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 (pow.f64 y.re 4) (pow.f64 y.re 4)) (+.f64 (*.f64 (pow.f64 y.im 4) (pow.f64 y.im 4)) (*.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y.re 6) (pow.f64 y.re 6)) (*.f64 (pow.f64 y.im 6) (pow.f64 y.im 6))) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (-.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 y.re 6) 3) (pow.f64 (pow.f64 y.im 6) 3)) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (+.f64 (*.f64 (pow.f64 y.re 6) (pow.f64 y.re 6)) (-.f64 (*.f64 (pow.f64 y.im 6) (pow.f64 y.im 6)) (*.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) 1) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (*.f64 (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (+.f64 y.re y.im)) (-.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) 1) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 3) |
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3) 1/3) |
(sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 2)) |
(log.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3)) |
(expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(exp.f64 (log.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 1)) |
(log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(fma.f64 y.re y.re (*.f64 y.im y.im)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(fma.f64 1 (*.f64 y.re y.re) (*.f64 y.im y.im)) |
(fma.f64 1 (*.f64 y.im y.im) (*.f64 y.re y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 y.im 4)) (pow.f64 (cbrt.f64 y.im) 2) (*.f64 y.re y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 y.re 4)) (pow.f64 (cbrt.f64 y.re) 2) (*.f64 y.im y.im)) |
| Outputs |
|---|
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) |
(/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) |
(*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re))) |
(*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re))) |
(*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) |
(-.f64 (+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 3)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 3)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re))) |
(*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) |
(/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) |
(*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) |
(/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) |
(*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (fma.f64 y.im y.im (*.f64 y.re y.re))) (/.f64 (*.f64 y.re x.re) (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(+.f64 (*.f64 (/.f64 x.im (fma.f64 y.im y.im (*.f64 y.re y.re))) y.im) (*.f64 (/.f64 x.re (fma.f64 y.im y.im (*.f64 y.re y.re))) y.re)) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 3)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) |
(-.f64 (+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (/.f64 x.im (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) |
(-.f64 (+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(pow.f64 y.im 2) |
(*.f64 y.im y.im) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(pow.f64 y.re 2) |
(*.f64 y.re y.re) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(pow.f64 y.re 2) |
(*.f64 y.re y.re) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(pow.f64 y.re 2) |
(*.f64 y.re y.re) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(pow.f64 y.im 2) |
(*.f64 y.im y.im) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(pow.f64 y.im 2) |
(*.f64 y.im y.im) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (/.f64 (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im))) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(*.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (/.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 3) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3) 1/3) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(fabs.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re y.re))) (-.f64 1 (*.f64 x.im y.im))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.re x.re))) (-.f64 1 (*.f64 y.im x.im))) |
(fma.f64 y.im x.im (expm1.f64 (log1p.f64 (*.f64 y.re x.re)))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im y.im))) (-.f64 1 (*.f64 x.re y.re))) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 y.im x.im))) 1) (*.f64 y.re x.re)) |
(fma.f64 y.re x.re (expm1.f64 (log1p.f64 (*.f64 y.im x.im)))) |
(-.f64 (/.f64 (pow.f64 (*.f64 x.re y.re) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (/.f64 (pow.f64 (*.f64 x.im y.im) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(-.f64 (+.f64 (*.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 y.im x.im))) 1) (*.f64 y.re x.re)) |
(fma.f64 y.re x.re (expm1.f64 (log1p.f64 (*.f64 y.im x.im)))) |
(-.f64 (+.f64 (*.f64 x.im y.im) (exp.f64 (log1p.f64 (*.f64 x.re y.re)))) 1) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.re x.re))) (-.f64 1 (*.f64 y.im x.im))) |
(fma.f64 y.im x.im (expm1.f64 (log1p.f64 (*.f64 y.re x.re)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(*.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 1 (/.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))) (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (*.f64 1 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (*.f64 1 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2))) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (/.f64 (sqrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2))))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (sqrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (sqrt.f64 (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2)))) (hypot.f64 (pow.f64 (*.f64 y.re x.re) 3/2) (pow.f64 (*.f64 y.im x.im) 3/2))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2))) (/.f64 (cbrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (cbrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (cbrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (cbrt.f64 (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2)))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)))) |
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) 1) (neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) 1) (neg.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2)) 1) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (/.f64 (sqrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2))))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (sqrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)))) |
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3))) (/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (sqrt.f64 (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2)))) (hypot.f64 (pow.f64 (*.f64 y.re x.re) 3/2) (pow.f64 (*.f64 y.im x.im) 3/2))) |
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (cbrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2))) (/.f64 (cbrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (cbrt.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (cbrt.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)))) |
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (/.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (cbrt.f64 (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2)))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.im y.im) 2))) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.re y.re) 2))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 4) (pow.f64 (*.f64 y.im x.im) 4)) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 4) (pow.f64 (*.f64 y.im x.im) 4)) (*.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 x.re y.re) 2) 3) (pow.f64 (pow.f64 (*.f64 x.im y.im) 2) 3)) (/.f64 1 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (+.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.re y.re) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 x.im y.im) 2) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2))))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 y.re x.re) 2) 3) (pow.f64 (pow.f64 (*.f64 y.im x.im) 2) 3)) (/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 4) (+.f64 (pow.f64 (*.f64 y.im x.im) 4) (*.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)))) (/.f64 1 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 6) (pow.f64 (*.f64 y.im x.im) 6)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (+.f64 (pow.f64 (*.f64 y.re x.re) 4) (fma.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.im x.im) 4)))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.im y.im) 3))) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (-.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))) |
(/.f64 (*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (-.f64 (pow.f64 (*.f64 y.re x.re) 6) (pow.f64 (*.f64 y.im x.im) 6))) (-.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 6) (pow.f64 (*.f64 y.im x.im) 6)) (*.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (*.f64 x.im y.im) 3) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (+.f64 (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.re y.re) 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3))))) |
(/.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 y.re x.re) 3) 3) (pow.f64 (pow.f64 (*.f64 y.im x.im) 3) 3)) 1) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) (-.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 6) (pow.f64 (*.f64 y.im x.im) 6)) (*.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 y.re x.re) 3) 3) (pow.f64 (pow.f64 (*.f64 y.im x.im) 3) 3)) (*.f64 (fma.f64 (pow.f64 (*.f64 y.im x.im) 3) (-.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3)) (pow.f64 (*.f64 y.re x.re) 6)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) (sqrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) (cbrt.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (pow.f64 (*.f64 y.re x.re) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im y.im) 2)) (+.f64 (sqrt.f64 (*.f64 x.im y.im)) (sqrt.f64 (*.f64 x.re y.re)))) (-.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (*.f64 (-.f64 (sqrt.f64 (*.f64 y.re x.re)) (sqrt.f64 (*.f64 y.im x.im))) (+.f64 (sqrt.f64 (*.f64 y.im x.im)) (sqrt.f64 (*.f64 y.re x.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re x.re) 2) (pow.f64 (*.f64 y.im x.im) 2)) (*.f64 (+.f64 (sqrt.f64 (*.f64 y.im x.im)) (sqrt.f64 (*.f64 y.re x.re))) (-.f64 (sqrt.f64 (*.f64 y.re x.re)) (sqrt.f64 (*.f64 y.im x.im))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im y.im) 3)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))))) (cbrt.f64 (+.f64 (pow.f64 (*.f64 x.re y.re) 2) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (+.f64 (pow.f64 (*.f64 y.re x.re) 2) (*.f64 x.im (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.re x.re) 2))) |
(pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) |
(sqrt.f64 (pow.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) 2)) |
(fabs.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) |
(log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 x.re y.re (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 y.re x.re (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 x.im y.im (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 y.im x.im (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 1 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 1 (*.f64 x.im y.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 (sqrt.f64 (*.f64 x.im y.im)) (sqrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.im)) 2) (cbrt.f64 (*.f64 x.im y.im)) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (cbrt.f64 (*.f64 x.re y.re)) (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.re y.re))) (-.f64 1 (*.f64 y.im y.im))) |
(fma.f64 y.im y.im (expm1.f64 (log1p.f64 (*.f64 y.re y.re)))) |
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 1) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.im y.im))) (-.f64 1 (*.f64 y.re y.re))) |
(fma.f64 y.re y.re (expm1.f64 (log1p.f64 (*.f64 y.im y.im)))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (/.f64 (pow.f64 y.im 4) (+.f64 y.re y.im)) (-.f64 y.re y.im))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(-.f64 (+.f64 (*.f64 y.re y.re) (exp.f64 (log1p.f64 (*.f64 y.im y.im)))) 1) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.im y.im))) (-.f64 1 (*.f64 y.re y.re))) |
(fma.f64 y.re y.re (expm1.f64 (log1p.f64 (*.f64 y.im y.im)))) |
(-.f64 (+.f64 (*.f64 y.im y.im) (exp.f64 (log1p.f64 (*.f64 y.re y.re)))) 1) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 y.re y.re))) (-.f64 1 (*.f64 y.im y.im))) |
(fma.f64 y.im y.im (expm1.f64 (log1p.f64 (*.f64 y.re y.re)))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(*.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(*.f64 (hypot.f64 y.re y.im) (hypot.f64 y.re y.im)) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(*.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(*.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (*.f64 1 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (*.f64 1 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 (*.f64 1 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (hypot.f64 y.re y.im) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))) |
(*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))))) (hypot.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) |
(/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (hypot.f64 y.re y.im) (/.f64 (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im))))) (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (/.f64 (cbrt.f64 (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))))) (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (/.f64 (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im))))) (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(/.f64 (*.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) 1) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) 1) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 (*.f64 (neg.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) 1) (neg.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) 1) (neg.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 (*.f64 (-.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) 1) (-.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (hypot.f64 y.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (hypot.f64 y.re y.im) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) (sqrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))) |
(*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))))) (hypot.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) |
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (hypot.f64 y.re y.im)) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (hypot.f64 y.re y.im) (/.f64 (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im))))) (sqrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (/.f64 (cbrt.f64 (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))))) (cbrt.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) |
(/.f64 (*.f64 (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (/.f64 (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2) (cbrt.f64 (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im))))) (cbrt.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y.re 4) (pow.f64 y.re 4)) (*.f64 (pow.f64 y.im 4) (pow.f64 y.im 4))) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) |
(/.f64 (-.f64 (pow.f64 y.re 8) (pow.f64 y.im 8)) (/.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 8) (pow.f64 y.im 8)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 y.re 4) 3) (pow.f64 (pow.f64 y.im 4) 3)) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 (pow.f64 y.re 4) (pow.f64 y.re 4)) (+.f64 (*.f64 (pow.f64 y.im 4) (pow.f64 y.im 4)) (*.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 y.re 4) 3) (pow.f64 (pow.f64 y.im 4) 3)) (/.f64 (+.f64 (pow.f64 y.re 8) (+.f64 (pow.f64 y.im 8) (*.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)))) (/.f64 1 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 12) (pow.f64 y.im 12)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) (+.f64 (pow.f64 y.re 8) (fma.f64 (pow.f64 y.im 4) (pow.f64 y.re 4) (pow.f64 y.im 8)))) |
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y.re 6) (pow.f64 y.re 6)) (*.f64 (pow.f64 y.im 6) (pow.f64 y.im 6))) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (-.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) |
(/.f64 (/.f64 (*.f64 (-.f64 (pow.f64 y.re 12) (pow.f64 y.im 12)) 1) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) (-.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) |
(/.f64 (-.f64 (pow.f64 y.re 12) (pow.f64 y.im 12)) (*.f64 (-.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 y.re 6) 3) (pow.f64 (pow.f64 y.im 6) 3)) (/.f64 1 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (+.f64 (*.f64 (pow.f64 y.re 6) (pow.f64 y.re 6)) (-.f64 (*.f64 (pow.f64 y.im 6) (pow.f64 y.im 6)) (*.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 y.re 6) 3) (pow.f64 (pow.f64 y.im 6) 3)) (/.f64 (-.f64 (+.f64 (pow.f64 y.re 12) (pow.f64 y.im 12)) (*.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (/.f64 1 (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 y.re 6) 3) (pow.f64 (pow.f64 y.im 6) 3)) (*.f64 (fma.f64 (pow.f64 y.im 6) (-.f64 (pow.f64 y.im 6) (pow.f64 y.re 6)) (pow.f64 y.re 12)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) 1) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (sqrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (*.f64 (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) (cbrt.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (+.f64 y.re y.im)) (-.f64 y.re y.im)) |
(-.f64 (/.f64 (pow.f64 y.re 4) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (pow.f64 y.im 4) (*.f64 (-.f64 y.re y.im) (+.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (fma.f64 y.re y.re (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) 1) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) (sqrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (*.f64 (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2)))))) (cbrt.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.re y.im) 2))))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (-.f64 (+.f64 (pow.f64 y.im 4) (pow.f64 y.re 4)) (pow.f64 (*.f64 y.im y.re) 2))) |
(/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 1) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 3) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3) 1/3) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 2)) |
(sqrt.f64 (pow.f64 (hypot.f64 y.re y.im) 4)) |
(log.f64 (exp.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) 3)) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(exp.f64 (log.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 1)) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(pow.f64 (hypot.f64 y.re y.im) 2) |
(fma.f64 y.re y.re (*.f64 y.im y.im)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(fma.f64 1 (*.f64 y.re y.re) (*.f64 y.im y.im)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(fma.f64 1 (*.f64 y.im y.im) (*.f64 y.re y.re)) |
(fma.f64 y.im y.im (*.f64 y.re y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 y.im 4)) (pow.f64 (cbrt.f64 y.im) 2) (*.f64 y.re y.re)) |
(fma.f64 (cbrt.f64 (pow.f64 y.re 4)) (pow.f64 (cbrt.f64 y.re) 2) (*.f64 y.im y.im)) |
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.2% | (fma.f64 x.re y.re (*.f64 x.im y.im)) |
| ✓ | 58.4% | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
Compiled 39 to 9 computations (76.9% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | y.re | @ | inf | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | x.re | @ | -inf | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | x.re | @ | inf | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | x.re | @ | 0 | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | x.im | @ | 0 | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 1× | batch-egg-rewrite |
| 944× | unswap-sqr |
| 754× | swap-sqr |
| 636× | associate-*r/ |
| 620× | associate-/r* |
| 522× | associate-*l/ |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 50 |
| 1 | 242 | 48 |
| 2 | 3050 | 48 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(fma.f64 x.re y.re (*.f64 x.im y.im)) |
| Outputs |
|---|
(((+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.re y.re))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.re y.re)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 (*.f64 x.re y.re) 1)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.re y.re) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) 1) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3) 1/3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re y.re) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 x.re y.re) 1) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 1 (*.f64 (*.f64 x.re y.re) 1)) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) 1) 1) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (neg.f64 (*.f64 x.re (neg.f64 y.re))) (neg.f64 (*.f64 y.im (neg.f64 x.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (*.f64 x.im y.im))) (-.f64 1 (*.f64 x.re y.re))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 (*.f64 x.re y.re) 1) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 1 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 1 (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3))) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) 1) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (fma.f64 x.re y.re (*.f64 x.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1592× | associate-/r/ |
| 1210× | distribute-lft-neg-out |
| 716× | associate-*r* |
| 706× | distribute-lft-neg-in |
| 658× | associate-*l* |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 308 | 7099 |
| 1 | 867 | 6809 |
| 2 | 4500 | 6791 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 x.re y.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.re y.re))) |
(+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.re y.re)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im))) |
(+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 (*.f64 x.re y.re) 1)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im))) |
(+.f64 (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.re y.re) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) 1) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)))) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)))) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))))) |
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))))) |
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 3) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3) 1/3) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(neg.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(neg.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) |
(neg.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(neg.f64 (*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) |
(+.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re y.re) 1)) |
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) 1) (*.f64 x.im y.im)) |
(+.f64 (*.f64 1 (*.f64 (*.f64 x.re y.re) 1)) (*.f64 x.im y.im)) |
(+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) 1) 1) (*.f64 x.im y.im)) |
(+.f64 (neg.f64 (*.f64 x.re (neg.f64 y.re))) (neg.f64 (*.f64 y.im (neg.f64 x.im)))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im y.im))) (-.f64 1 (*.f64 x.re y.re))) |
(-.f64 (+.f64 (*.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) |
(-.f64 (+.f64 (*.f64 (*.f64 x.re y.re) 1) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(*.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(/.f64 1 (/.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 1 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 1 (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3))) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) 1) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3) |
(pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3) |
(neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) |
(log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1)) |
(log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
| Outputs |
|---|
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) |
(*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im))) |
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) |
(-.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) |
(*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) |
(*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 y.im (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re))) |
(+.f64 (*.f64 (/.f64 y.im (fma.f64 y.re y.re (*.f64 y.im y.im))) x.im) (/.f64 y.re (/.f64 (fma.f64 y.re y.re (*.f64 y.im y.im)) x.re))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(-.f64 (-.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im))) |
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) |
(-.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im))) |
(+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (-.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) |
(-.f64 (/.f64 x.im y.im) (-.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 3)) (*.f64 y.re y.re)) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) (-.f64 y.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 x.re y.re) |
(*.f64 y.re x.re) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 y.im x.im) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.re y.re))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.re y.re)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(+.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 (*.f64 x.re y.re) 1)) (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 x.im y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(+.f64 (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.re y.re) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) 1) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) 1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(*.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (fma.f64 y.re (pow.f64 y.re 3) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(*.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (+.f64 (pow.f64 y.im 6) (pow.f64 y.re 6))) (+.f64 (pow.f64 y.re 4) (-.f64 (pow.f64 y.im 4) (*.f64 y.re (*.f64 y.im (*.f64 y.im y.re)))))) |
(/.f64 (*.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (-.f64 (pow.f64 y.im 4) (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (pow.f64 y.re 4)))) (+.f64 (pow.f64 y.im 6) (pow.f64 y.re 6))) |
(*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2))) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)))) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))))) |
(*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (hypot.f64 y.re y.im))) (cbrt.f64 (/.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 3) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3) 1/3) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(fabs.f64 (/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) 1)) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 x.im y.im) (*.f64 (*.f64 x.re y.re) 1)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 (*.f64 x.re y.re) 1) (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 1 (*.f64 (*.f64 x.re y.re) 1)) (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (*.f64 (*.f64 (*.f64 x.re y.re) 1) 1) (*.f64 x.im y.im)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(+.f64 (neg.f64 (*.f64 x.re (neg.f64 y.re))) (neg.f64 (*.f64 y.im (neg.f64 x.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im y.im))) (-.f64 1 (*.f64 x.re y.re))) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 y.im x.im))) 1) (*.f64 y.re x.re)) |
(fma.f64 y.re x.re (expm1.f64 (log1p.f64 (*.f64 y.im x.im)))) |
(-.f64 (+.f64 (*.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 y.im x.im))) 1) (*.f64 y.re x.re)) |
(fma.f64 y.re x.re (expm1.f64 (log1p.f64 (*.f64 y.im x.im)))) |
(-.f64 (+.f64 (*.f64 (*.f64 x.re y.re) 1) (exp.f64 (log1p.f64 (*.f64 x.im y.im)))) 1) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 y.im x.im))) 1) (*.f64 y.re x.re)) |
(fma.f64 y.re x.re (expm1.f64 (log1p.f64 (*.f64 y.im x.im)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))) (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))))) (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2)) |
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))) (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))))) |
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))) (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))))) (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2)) |
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))) (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))))) |
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))) (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))))) (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2)) |
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))) (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) 2) (cbrt.f64 (sqrt.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)))))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(/.f64 1 (/.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 1 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(/.f64 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (-.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3)) (fma.f64 (*.f64 y.re y.re) (*.f64 x.re x.re) (*.f64 (*.f64 y.im x.im) (fma.f64 x.im y.im (neg.f64 (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (fma.f64 y.im x.im (neg.f64 (*.f64 y.re x.re))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 1 (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3)) (fma.f64 (*.f64 y.re y.re) (*.f64 x.re x.re) (*.f64 (*.f64 y.im x.im) (fma.f64 x.im y.im (neg.f64 (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (fma.f64 y.im x.im (neg.f64 (*.f64 y.re x.re))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(/.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2))) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (-.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (*.f64 1 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3))) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3)) (fma.f64 (*.f64 y.re y.re) (*.f64 x.re x.re) (*.f64 (*.f64 y.im x.im) (fma.f64 x.im y.im (neg.f64 (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (fma.f64 y.im x.im (neg.f64 (*.f64 y.re x.re))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (pow.f64 (*.f64 x.im y.im) 2)) 1) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (-.f64 (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) 1) (+.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.re x.re)) (*.f64 (*.f64 x.im y.im) (-.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3)) (fma.f64 (*.f64 y.re y.re) (*.f64 x.re x.re) (*.f64 (*.f64 y.im x.im) (fma.f64 x.im y.im (neg.f64 (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (fma.f64 y.im x.im (neg.f64 (*.f64 y.re x.re))) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re x.re) 3) (pow.f64 (*.f64 y.im x.im) 3)) (fma.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re)) (*.f64 y.re (*.f64 y.re (*.f64 x.re x.re))))) |
(pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(pow.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 3) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(pow.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) 1/3) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(sqrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2)) |
(sqrt.f64 (pow.f64 (fma.f64 y.im x.im (*.f64 y.re x.re)) 2)) |
(fabs.f64 (fma.f64 y.im x.im (*.f64 y.re x.re))) |
(log.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(cbrt.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(expm1.f64 (log1p.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(exp.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1)) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
(log1p.f64 (expm1.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(fma.f64 y.im x.im (*.f64 y.re x.re)) |
Compiled 11213 to 3724 computations (66.8% saved)
13 alts after pruning (13 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 434 | 13 | 447 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 1 | 0 | 1 |
| Total | 436 | 13 | 449 |
| Status | Accuracy | Program |
|---|---|---|
| 57.5% | (pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) | |
| 57.4% | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) | |
| 25.2% | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) | |
| ▶ | 36.0% | (/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| ▶ | 36.0% | (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 38.4% | (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) | |
| 46.6% | (/.f64 x.re y.re) | |
| ▶ | 36.6% | (/.f64 x.im y.im) |
| 51.1% | (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) | |
| 52.4% | (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) | |
| ▶ | 54.4% | (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
| 42.8% | (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) | |
| ▶ | 71.9% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
Compiled 382 to 236 computations (38.2% saved)
Found 4 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (/.f64 1 (hypot.f64 y.re y.im)) |
| ✓ | 99.5% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
| 99.2% | (fma.f64 x.re y.re (*.f64 x.im y.im)) | |
| ✓ | 73.9% | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) |
Compiled 52 to 14 computations (73.1% saved)
30 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 7.0ms | x.im | @ | inf | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) |
| 2.0ms | x.re | @ | 0 | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) |
| 1.0ms | x.im | @ | 0 | (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) |
| 1.0ms | y.re | @ | inf | (/.f64 1 (hypot.f64 y.re y.im)) |
| 0.0ms | y.im | @ | inf | (/.f64 1 (hypot.f64 y.re y.im)) |
| 1× | batch-egg-rewrite |
| 1696× | associate-*l/ |
| 1220× | associate-/r* |
| 1142× | associate-/l* |
| 452× | distribute-lft-in |
| 344× | associate-/l/ |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 79 |
| 1 | 284 | 73 |
| 2 | 3557 | 73 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
| Outputs |
|---|
(((+.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 1 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (*.f64 1 (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 1 (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) (*.f64 1 (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.re y.re) 1)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 -1 (hypot.f64 y.re y.im)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im))) -1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) 1) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) -1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (hypot.f64 y.re y.im) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (/.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (hypot.f64 y.re y.im) (/.f64 -1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 (hypot.f64 y.re y.im) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) (pow.f64 (hypot.f64 y.re y.im) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (pow.f64 (hypot.f64 y.re y.im) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) -1) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -1))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.im y.im) 2)) (pow.f64 (hypot.f64 y.re y.im) -2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (pow.f64 (hypot.f64 y.re y.im) -2)) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) 1) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) 1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) 1) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) 1) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 -1) (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) -1) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) -1) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) 1) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) 1) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3) 1/3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (pow.f64 (hypot.f64 y.re y.im) -1/2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 -1 (/.f64 -1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 -1 (hypot.f64 y.re y.im)) -1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1) (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) -1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (hypot.f64 y.re y.im) -1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) 2) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) 3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) 1/3) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) -1/2) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (hypot.f64 y.re y.im)) -1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1564× | associate-/r* |
| 1328× | associate-*r* |
| 1070× | associate-/l/ |
| 1052× | associate-*l* |
| 790× | *-commutative |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 853 | 23431 |
| 1 | 2392 | 21533 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
(*.f64 -1 x.re) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1 x.re)))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
(*.f64 -1 x.im) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 -1 x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 1 y.im) |
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)))))) |
(/.f64 1 y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)))) |
(/.f64 -1 y.re) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))) (/.f64 1 y.re)) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))))) (/.f64 1 y.re)) |
(/.f64 1 y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (/.f64 1 y.re)))) |
(/.f64 1 y.im) |
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 7)))))) |
(/.f64 -1 y.im) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (/.f64 1 y.im)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))))) (/.f64 1 y.im)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 1/8 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))))) (/.f64 1 y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 1 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (*.f64 1 (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 1 (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) (*.f64 1 (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.re y.re) 1)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1) |
(*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 -1 (hypot.f64 y.re y.im)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 3) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) 1/3) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3))) |
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) 1) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) -1)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 1 (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 1 (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1) |
(/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2))) |
(/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (hypot.f64 y.re y.im) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (/.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 -1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 -1 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 -1 (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (hypot.f64 y.re y.im)))) |
(/.f64 -1 (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 -1 (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 -1 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (hypot.f64 y.re y.im) (/.f64 -1 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) 1)) |
(/.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)))) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 (hypot.f64 y.re y.im) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 -1 (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) |
(/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1))) |
(/.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) -1) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -1))) |
(/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.im y.im) 2)) (pow.f64 (hypot.f64 y.re y.im) -2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (pow.f64 (hypot.f64 y.re y.im) -2)) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) 1) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) 1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) 1) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) 1) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 1 (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 1 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (sqrt.f64 -1) (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) 1) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) -1) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) -1) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) 1) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) 1) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) |
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 3) |
(pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3) 1/3) |
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 2)) |
(log.f64 (exp.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))) |
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3)) |
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3))) |
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(exp.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 1)) |
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im)))) 1) |
(*.f64 1 (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 -1 (/.f64 -1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 -1 (hypot.f64 y.re y.im)) -1) |
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1) (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) -1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -1)) |
(pow.f64 (hypot.f64 y.re y.im) -1) |
(pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1) |
(pow.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) 2) |
(pow.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) 3) |
(pow.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) 1/3) |
(pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) -1/2) |
(sqrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) |
(log.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im))))) |
(cbrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im)))) |
(exp.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (hypot.f64 y.re y.im)) -1)) |
(exp.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im)))) |
| Outputs |
|---|
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.im x.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.re x.re)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.re x.re)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (*.f64 y.im y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (*.f64 y.im y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))) |
(*.f64 -1 x.re) |
(neg.f64 x.re) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)) |
(*.f64 -1 (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))) |
(fma.f64 -1 (*.f64 (/.f64 y.im y.re) x.im) (neg.f64 x.re)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))) |
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (*.f64 -1 (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))) |
(fma.f64 1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1 (*.f64 (/.f64 y.im y.re) x.im) (neg.f64 x.re))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1 x.re)))) |
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (neg.f64 x.re)))) |
(fma.f64 1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1 (*.f64 (/.f64 y.im y.re) x.im) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (neg.f64 x.re)))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.re x.re)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.im x.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.im x.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (fma.f64 x.re y.re (*.f64 y.im x.im))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (*.f64 y.re y.re)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (*.f64 y.im y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1/2 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (*.f64 y.im y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(*.f64 -1 x.im) |
(neg.f64 x.im) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 -1 x.im)) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (*.f64 y.im y.im)) 1/2))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im) 1/2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 1/2 (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (*.f64 y.im y.im)))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 1/2 (+.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im) (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (neg.f64 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 (neg.f64 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re y.im) y.im) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(fma.f64 -1 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re y.im) y.im) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re y.im) y.im) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(fma.f64 -1 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re y.im) y.im) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re y.im) y.im) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 y.im y.im) x.re) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))))) |
(fma.f64 -1 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re y.im) y.im) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (neg.f64 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 (neg.f64 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (neg.f64 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)) (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 (neg.f64 x.im) (*.f64 y.re y.re)) (pow.f64 y.im 3))))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (/.f64 (*.f64 y.re x.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) (*.f64 (/.f64 x.re (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) y.re)) |
(/.f64 1 y.im) |
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))) |
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)))))) |
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (+.f64 (/.f64 1 y.im) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)))))) |
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (+.f64 (/.f64 1 y.im) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (*.f64 -5/16 (pow.f64 y.re 6)) (pow.f64 y.im 7))))) |
(/.f64 1 y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)) |
(fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))) |
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re))) |
(fma.f64 -1 (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 6)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)))) |
(fma.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 y.im 6) (*.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (pow.f64 y.im 4) -3/8)))) (pow.f64 y.re 7)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)))) |
(fma.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 y.im 6) (*.f64 -1/2 (*.f64 (pow.f64 y.im 6) -3/8))) (pow.f64 y.re 7)) (fma.f64 -1 (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)))) |
(/.f64 -1 y.re) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)) |
(-.f64 (/.f64 (*.f64 1/2 (*.f64 y.im y.im)) (pow.f64 y.re 3)) (/.f64 1 y.re)) |
(-.f64 (*.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3))) (/.f64 1 y.re)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))) (/.f64 1 y.re)) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8)) (/.f64 1 y.re)) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 y.im 4)) (*.f64 -1/4 (pow.f64 y.im 4))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))))))) (/.f64 1 y.re)) |
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 4) -3/8) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im))) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8)))) (/.f64 1 y.re)) |
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 6) -3/8) (pow.f64 y.re 7)) (fma.f64 1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 1/8 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (*.f64 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) -3/8)))) (/.f64 1 y.re)) |
(/.f64 1 y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re)) |
(fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re)) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (/.f64 1 y.re))) |
(fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (/.f64 1 y.re))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 2) (pow.f64 y.re 3))) (+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7))) (/.f64 1 y.re)))) |
(fma.f64 3/8 (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) (fma.f64 -5/16 (/.f64 (pow.f64 y.im 6) (pow.f64 y.re 7)) (/.f64 1 y.re)))) |
(/.f64 1 y.im) |
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 1 y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 1 y.im) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 4) -3/8) (pow.f64 y.im 5)) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 1 y.im) (fma.f64 -1 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 1 y.im) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 7)))))) |
(+.f64 (/.f64 1 y.im) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 4) -3/8) (pow.f64 y.im 5)) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (neg.f64 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (pow.f64 y.re 4) -3/8)) (*.f64 (pow.f64 y.re 6) 1/8)) (pow.f64 y.im 7)))))) |
(+.f64 (/.f64 1 y.im) (fma.f64 -1 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (neg.f64 (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.re 6) -3/8) (*.f64 (pow.f64 y.re 6) 1/8)) (pow.f64 y.im 7)))))) |
(/.f64 -1 y.im) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (/.f64 1 y.im)) |
(-.f64 (*.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))) (/.f64 1 y.im)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))))) (/.f64 1 y.im)) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8)) (/.f64 1 y.im)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5))) (*.f64 1/8 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))))) (/.f64 1 y.im)) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 4) -3/8) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) (+.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8) (/.f64 (*.f64 (pow.f64 y.re 6) 1/8) (pow.f64 y.im 7))))) (/.f64 1 y.im)) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 6) -3/8) (pow.f64 y.im 7)) (+.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) -3/8) (/.f64 (*.f64 (pow.f64 y.re 6) 1/8) (pow.f64 y.im 7))))) (/.f64 1 y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 1 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (*.f64 1 (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 1 (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) (*.f64 1 (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.re y.re) 1)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) 1) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im))) |
(*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 -1 (hypot.f64 y.re y.im)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(*.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 1) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 3) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) 1/3) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3)) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1)) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.im y.im) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.re y.re) (/.f64 1 (hypot.f64 y.re y.im)))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 x.im y.im) (/.f64 1 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) 1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) -1)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 1 (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 1 (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (hypot.f64 y.re y.im) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))) (cbrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))) |
(*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (*.f64 (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (cbrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (hypot.f64 y.re y.im) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (/.f64 1 (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 -1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 -1 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 -1 (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 -1 (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 -1 (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 -1 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (hypot.f64 y.re y.im) (/.f64 -1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) 1)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(*.f64 (/.f64 (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (sqrt.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) |
(/.f64 (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(*.f64 (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (*.f64 (/.f64 (sqrt.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(*.f64 (sqrt.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)))) |
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (*.f64 (/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (hypot.f64 y.re y.im)) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(*.f64 (/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(/.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(*.f64 (/.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2))) (/.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2)))) |
(*.f64 (/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))))) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2))) |
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)))) |
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)))) |
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2))))) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 (hypot.f64 y.re y.im) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (*.f64 (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 -1 (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 1) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2)) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))) |
(/.f64 (-.f64 (*.f64 (*.f64 y.re x.re) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.im x.im) 2)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) |
(/.f64 (-.f64 (*.f64 x.re (*.f64 (*.f64 y.re y.re) x.re)) (pow.f64 (*.f64 y.im x.im) 2)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3)) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 (*.f64 y.re x.re) (*.f64 y.re x.re) (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3)) (pow.f64 (hypot.f64 y.re y.im) 2)) (fma.f64 (*.f64 y.re x.re) (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))) |
(/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re y.re (*.f64 x.im y.im)))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (sqrt.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (*.f64 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (*.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) -1) (/.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -1))) |
(*.f64 (/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (hypot.f64 y.re y.im) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (pow.f64 (*.f64 x.im y.im) 2)) (pow.f64 (hypot.f64 y.re y.im) -2)) (-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))) |
(/.f64 (-.f64 (*.f64 (*.f64 y.re x.re) (*.f64 y.re x.re)) (pow.f64 (*.f64 y.im x.im) 2)) (/.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) |
(*.f64 (/.f64 (-.f64 (*.f64 x.re (*.f64 (*.f64 y.re y.re) x.re)) (pow.f64 (*.f64 y.im x.im) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im y.im) 3) (pow.f64 (*.f64 x.re y.re) 3)) (pow.f64 (hypot.f64 y.re y.im) -2)) (+.f64 (*.f64 (*.f64 x.re y.re) (*.f64 x.re y.re)) (-.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3))) (fma.f64 (*.f64 y.re x.re) (*.f64 y.re x.re) (-.f64 (pow.f64 (*.f64 y.im x.im) 2) (*.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))) |
(/.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -2) (+.f64 (pow.f64 (*.f64 y.im x.im) 3) (pow.f64 (*.f64 y.re x.re) 3))) (fma.f64 (*.f64 y.re x.re) (*.f64 y.re x.re) (*.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.im x.im) (*.f64 y.re x.re))))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (neg.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) 1) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) -1) 1) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) 1) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (*.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) 1) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (*.f64 -1 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) 1) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 1 (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (*.f64 (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 1 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (*.f64 (sqrt.f64 -1) (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (sqrt.f64 -1) (/.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2))) |
(*.f64 (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) |
(/.f64 (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 2)) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (/.f64 1 (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) 1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) 2) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 4)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 4)) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im)))))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (*.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (*.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(/.f64 (*.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (/.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))))) |
(/.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2))) (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))))) |
(*.f64 (/.f64 (*.f64 (/.f64 (/.f64 1 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (/.f64 (/.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) 2) (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) -1) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) -1) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) -1) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (*.f64 -1 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) 1) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) (*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) 1) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 1 (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) 1) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (neg.f64 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) -1) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.re y.re (*.f64 y.im x.im)))) |
(/.f64 (/.f64 (neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (neg.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (*.f64 (*.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (hypot.f64 y.re y.im)) 2) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 y.im x.im))) (hypot.f64 y.re y.im)) 2) |
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 3) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3) 1/3) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 2)) |
(sqrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 2)) |
(log.f64 (exp.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) 3)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im)) 3))) |
(cbrt.f64 (*.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (/.f64 (pow.f64 (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(exp.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2))) 1)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im)))) 1) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(*.f64 1 (/.f64 1 (hypot.f64 y.re y.im))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) 1) (cbrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) 1) (cbrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 -1 (/.f64 -1 (hypot.f64 y.re y.im))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 -1 (hypot.f64 y.re y.im)) -1) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1) (pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -1)) |
(pow.f64 (sqrt.f64 (hypot.f64 y.re y.im)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) -1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) -1)) |
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(pow.f64 (hypot.f64 y.re y.im) -1) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 1 (hypot.f64 y.re y.im)) 1) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) 2) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) 3) |
(/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 3)) |
(pow.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) 1/3) |
(cbrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3))) |
(pow.f64 (pow.f64 (hypot.f64 y.re y.im) 2) -1/2) |
(sqrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) |
(log.f64 (exp.f64 (/.f64 1 (hypot.f64 y.re y.im)))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im))))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(cbrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (/.f64 1 (hypot.f64 y.re y.im)))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(exp.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im)))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (hypot.f64 y.re y.im)) -1)) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 y.re y.im))) 1)) |
(/.f64 1 (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 y.re y.im)))) |
(/.f64 1 (hypot.f64 y.re y.im)) |
Compiled 9 to 5 computations (44.4% saved)
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 95.5% | (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
| ✓ | 95.5% | (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
Compiled 35 to 9 computations (74.3% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | x.im | @ | 0 | (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
| 3.0ms | y.re | @ | -inf | (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
| 0.0ms | x.re | @ | 0 | (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
| 0.0ms | x.im | @ | inf | (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
| 0.0ms | x.im | @ | 0 | (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
| 1× | batch-egg-rewrite |
| 622× | distribute-lft-neg-in |
| 584× | distribute-rgt-neg-in |
| 542× | distribute-rgt-in |
| 540× | associate-/r/ |
| 514× | distribute-lft-in |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 50 |
| 1 | 247 | 46 |
| 2 | 3775 | 46 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) 1) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) (-.f64 1 (/.f64 x.re y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 x.re y.re))) (-.f64 1 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 x.re y.re) 2) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (/.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) 1) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (exp.f64 (log1p.f64 (/.f64 x.re y.re)))) 1) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 1) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2) (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (*.f64 (/.f64 1 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.re) (+.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 1 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 y.re (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 y.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 x.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 x.im y.im)))) (pow.f64 y.re 3)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 y.re (*.f64 (/.f64 y.re x.re) (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 (/.f64 y.re x.re) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 y.re y.re) (*.f64 (/.f64 y.re x.re) (*.f64 x.im y.im)))) (*.f64 (/.f64 y.re x.re) (*.f64 y.re y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 y.re) (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 y.re (neg.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 (neg.f64 x.re) (*.f64 y.re y.re)) (*.f64 (neg.f64 y.re) (*.f64 x.im y.im)))) (neg.f64 (pow.f64 y.re 3))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re)))))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (-.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (pow.f64 (/.f64 x.re y.re) 2))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (-.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (pow.f64 (/.f64 x.re y.re) 3)))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) 3)) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.re (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 y.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 x.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 x.im y.im))) (pow.f64 y.re 3)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 y.re (*.f64 (/.f64 y.re x.re) (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 (/.f64 y.re x.re) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 (/.f64 y.re x.re) (*.f64 x.im y.im))) (*.f64 (/.f64 y.re x.re) (*.f64 y.re y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 y.re) (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 y.re (neg.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.re) (*.f64 y.re y.re)) (*.f64 (neg.f64 y.re) (*.f64 x.im y.im))) (neg.f64 (pow.f64 y.re 3))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) (*.f64 y.re x.re)) (*.f64 y.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 y.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (/.f64 y.re x.re))) (*.f64 y.re (/.f64 y.re x.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 y.re)) (*.f64 y.re (neg.f64 x.re))) (*.f64 y.re (neg.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) y.re) (*.f64 (*.f64 y.re y.re) x.re)) (pow.f64 y.re 3)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.re y.re) 1) (*.f64 (*.f64 x.im y.im) (/.f64 y.re x.re))) (*.f64 (*.f64 y.re y.re) (/.f64 y.re x.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (neg.f64 y.re)) (*.f64 (*.f64 y.re y.re) (neg.f64 x.re))) (neg.f64 (pow.f64 y.re 3))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 x.re y.re) 2)) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (neg.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 1) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 3) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 3) 1/3) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (neg.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 2)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 3)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 1)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 x.re (/.f64 1 y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (sqrt.f64 (/.f64 x.re y.re)) (sqrt.f64 (/.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) (/.f64 x.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.re y.re)) 2) (cbrt.f64 (/.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 2) (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) 1) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 x.im (*.f64 y.re (/.f64 y.re y.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 y.im (*.f64 y.re (/.f64 y.re x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 y.im (*.f64 (/.f64 y.re x.im) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (*.f64 (/.f64 y.re y.im) (/.f64 y.re x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (*.f64 y.re y.re) (*.f64 x.im y.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 y.im) (*.f64 (/.f64 y.re x.im) (/.f64 y.re (sqrt.f64 y.im)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 x.im) (*.f64 (/.f64 y.re y.im) (/.f64 y.re (sqrt.f64 x.im)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (/.f64 y.re x.im) (/.f64 y.re (cbrt.f64 y.im)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (/.f64 y.re y.im) (/.f64 y.re (cbrt.f64 x.im)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re x.im) (neg.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 y.im) (*.f64 (neg.f64 y.re) (/.f64 y.re x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) (neg.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 x.im) (*.f64 (neg.f64 y.re) (/.f64 y.re y.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 y.re (neg.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.im 1) (*.f64 (/.f64 y.re x.im) y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.im (sqrt.f64 y.re)) (*.f64 (/.f64 y.re x.im) (sqrt.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2)) (*.f64 (/.f64 y.re x.im) (cbrt.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.im (*.f64 (sqrt.f64 y.re) (/.f64 y.re y.im))) (sqrt.f64 y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 x.im (/.f64 y.im y.re)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.im 1) (/.f64 y.re (/.f64 y.im y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.im (sqrt.f64 y.re)) (*.f64 (/.f64 y.re y.im) (sqrt.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (*.f64 (/.f64 y.re y.im) (cbrt.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (*.f64 (/.f64 y.re y.im) (/.f64 y.re (neg.f64 x.im)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (*.f64 (/.f64 y.re x.im) (/.f64 y.re (neg.f64 y.im)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 y.im) (neg.f64 x.im)) (*.f64 (neg.f64 y.re) (neg.f64 y.re))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 x.im (/.f64 (neg.f64 y.im) y.re)) (neg.f64 y.re)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 1) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) 2) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 3) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) 1/3) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im (neg.f64 y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (neg.f64 y.re)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 1)) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) #(struct:egraph-query ((+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 942× | distribute-lft-neg-in |
| 854× | distribute-rgt-neg-in |
| 608× | associate-*r* |
| 552× | distribute-lft-neg-out |
| 538× | distribute-rgt-neg-out |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 361 | 7711 |
| 1 | 1073 | 7097 |
| 2 | 4891 | 7071 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) 1) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) (-.f64 1 (/.f64 x.re y.re))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.re y.re))) (-.f64 1 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 x.re y.re) 2) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) |
(-.f64 (+.f64 (/.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) 1) |
(-.f64 (+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (exp.f64 (log1p.f64 (/.f64 x.re y.re)))) 1) |
(*.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 1) |
(*.f64 1 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) |
(*.f64 (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(*.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2) (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(*.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (*.f64 (/.f64 1 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) |
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 y.re) (+.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)) |
(*.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) |
(*.f64 (*.f64 (/.f64 1 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) |
(*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 y.re (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 y.re y.re)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 x.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 x.im y.im)))) (pow.f64 y.re 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 y.re (*.f64 (/.f64 y.re x.re) (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 (/.f64 y.re x.re) y.re)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 y.re y.re) (*.f64 (/.f64 y.re x.re) (*.f64 x.im y.im)))) (*.f64 (/.f64 y.re x.re) (*.f64 y.re y.re))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 y.re) (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 y.re (neg.f64 y.re))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 (neg.f64 x.re) (*.f64 y.re y.re)) (*.f64 (neg.f64 y.re) (*.f64 x.im y.im)))) (neg.f64 (pow.f64 y.re 3))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re)))))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (-.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (pow.f64 (/.f64 x.re y.re) 2))))) |
(/.f64 1 (/.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))) |
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (-.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (pow.f64 (/.f64 x.re y.re) 3)))))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) 3)) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.re (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 y.re y.re)) |
(/.f64 (+.f64 (*.f64 x.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 x.im y.im))) (pow.f64 y.re 3)) |
(/.f64 (+.f64 y.re (*.f64 (/.f64 y.re x.re) (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 (/.f64 y.re x.re) y.re)) |
(/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 (/.f64 y.re x.re) (*.f64 x.im y.im))) (*.f64 (/.f64 y.re x.re) (*.f64 y.re y.re))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 y.re) (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 y.re (neg.f64 y.re))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.re) (*.f64 y.re y.re)) (*.f64 (neg.f64 y.re) (*.f64 x.im y.im))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) (*.f64 y.re x.re)) (*.f64 y.re y.re)) |
(/.f64 (+.f64 y.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (/.f64 y.re x.re))) (*.f64 y.re (/.f64 y.re x.re))) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 y.re)) (*.f64 y.re (neg.f64 x.re))) (*.f64 y.re (neg.f64 y.re))) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) y.re) (*.f64 (*.f64 y.re y.re) x.re)) (pow.f64 y.re 3)) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re y.re) 1) (*.f64 (*.f64 x.im y.im) (/.f64 y.re x.re))) (*.f64 (*.f64 y.re y.re) (/.f64 y.re x.re))) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (neg.f64 y.re)) (*.f64 (*.f64 y.re y.re) (neg.f64 x.re))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 x.re y.re) 2)) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (neg.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) |
(pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 1) |
(pow.f64 (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2) |
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 3) |
(pow.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 3) 1/3) |
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (neg.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re))) |
(neg.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))))) |
(sqrt.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 2)) |
(log.f64 (exp.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))) |
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(exp.f64 (log.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 1)) |
(log1p.f64 (expm1.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(fma.f64 x.re (/.f64 1 y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) |
(fma.f64 1 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 1 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re)) |
(fma.f64 (sqrt.f64 (/.f64 x.re y.re)) (sqrt.f64 (/.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) (/.f64 x.re y.re)) |
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.re y.re)) 2) (cbrt.f64 (/.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 2) (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re y.re)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) 1) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.im (*.f64 y.re (/.f64 y.re y.im))) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)) |
(/.f64 y.im (*.f64 y.re (/.f64 y.re x.im))) |
(/.f64 y.im (*.f64 (/.f64 y.re x.im) y.re)) |
(/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)) |
(/.f64 1 (*.f64 (/.f64 y.re y.im) (/.f64 y.re x.im))) |
(/.f64 1 (/.f64 (*.f64 y.re y.re) (*.f64 x.im y.im))) |
(/.f64 (sqrt.f64 y.im) (*.f64 (/.f64 y.re x.im) (/.f64 y.re (sqrt.f64 y.im)))) |
(/.f64 (sqrt.f64 x.im) (*.f64 (/.f64 y.re y.im) (/.f64 y.re (sqrt.f64 x.im)))) |
(/.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (/.f64 y.re x.im) (/.f64 y.re (cbrt.f64 y.im)))) |
(/.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (/.f64 y.re y.im) (/.f64 y.re (cbrt.f64 x.im)))) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)) |
(/.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re x.im) (neg.f64 y.re))) |
(/.f64 (neg.f64 y.im) (*.f64 (neg.f64 y.re) (/.f64 y.re x.im))) |
(/.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) (neg.f64 y.re))) |
(/.f64 (neg.f64 x.im) (*.f64 (neg.f64 y.re) (/.f64 y.re y.im))) |
(/.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 y.re (neg.f64 y.re))) |
(/.f64 (/.f64 y.im 1) (*.f64 (/.f64 y.re x.im) y.re)) |
(/.f64 (/.f64 y.im (sqrt.f64 y.re)) (*.f64 (/.f64 y.re x.im) (sqrt.f64 y.re))) |
(/.f64 (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2)) (*.f64 (/.f64 y.re x.im) (cbrt.f64 y.re))) |
(/.f64 (/.f64 x.im (*.f64 (sqrt.f64 y.re) (/.f64 y.re y.im))) (sqrt.f64 y.re)) |
(/.f64 (/.f64 (*.f64 x.im (/.f64 y.im y.re)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) |
(/.f64 (/.f64 x.im 1) (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 (/.f64 x.im (sqrt.f64 y.re)) (*.f64 (/.f64 y.re y.im) (sqrt.f64 y.re))) |
(/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (*.f64 (/.f64 y.re y.im) (cbrt.f64 y.re))) |
(/.f64 -1 (*.f64 (/.f64 y.re y.im) (/.f64 y.re (neg.f64 x.im)))) |
(/.f64 -1 (*.f64 (/.f64 y.re x.im) (/.f64 y.re (neg.f64 y.im)))) |
(/.f64 (*.f64 (neg.f64 y.im) (neg.f64 x.im)) (*.f64 (neg.f64 y.re) (neg.f64 y.re))) |
(/.f64 (*.f64 x.im (/.f64 (neg.f64 y.im) y.re)) (neg.f64 y.re)) |
(pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 1) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) 2) |
(pow.f64 (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 3) |
(pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) 1/3) |
(neg.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im (neg.f64 y.re)))) |
(neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (neg.f64 y.re)))) |
(sqrt.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) |
(log.f64 (exp.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) |
(cbrt.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) |
(expm1.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(exp.f64 (log.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 1)) |
(log1p.f64 (expm1.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
| Outputs |
|---|
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) 1) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) (-.f64 1 (/.f64 x.re y.re))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.re y.re))) (-.f64 1 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (/.f64 x.re y.re))) 1) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) |
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (expm1.f64 (log1p.f64 (/.f64 x.re y.re)))) |
(-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 x.re y.re) 2) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) 1) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(-.f64 (+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (exp.f64 (log1p.f64 (/.f64 x.re y.re)))) 1) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (/.f64 x.re y.re))) 1) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))) |
(fma.f64 x.im (/.f64 y.im (*.f64 y.re y.re)) (expm1.f64 (log1p.f64 (/.f64 x.re y.re)))) |
(*.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 1) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 1 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2) (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (*.f64 (/.f64 1 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 (/.f64 1 y.re) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 (/.f64 1 y.re) (+.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) 1) (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2))) |
(*.f64 (*.f64 (/.f64 1 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) 1) (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3))) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3))) (fma.f64 (/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (pow.f64 (/.f64 x.re y.re) 2))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 x.re y.re) (*.f64 y.re (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 y.re y.re)) |
(*.f64 (*.f64 y.re y.re) (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 (*.f64 y.re x.re) (*.f64 x.im (*.f64 (/.f64 y.im y.re) y.re))))) |
(*.f64 (*.f64 y.re y.re) (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (*.f64 y.re (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 x.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 x.im y.im)))) (pow.f64 y.re 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 (*.f64 y.re (*.f64 y.re x.re)) (*.f64 x.im (*.f64 y.im y.re)))) (pow.f64 y.re 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (*.f64 y.re (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (pow.f64 y.re 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 y.re (*.f64 (/.f64 y.re x.re) (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 (/.f64 y.re x.re) y.re)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 y.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (/.f64 y.re x.re)))) (*.f64 y.re (/.f64 y.re x.re))) |
(*.f64 (/.f64 y.re x.re) (*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 y.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (/.f64 y.re x.re)))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 y.re y.re) (*.f64 (/.f64 y.re x.re) (*.f64 x.im y.im)))) (*.f64 (/.f64 y.re x.re) (*.f64 y.re y.re))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 (*.f64 y.re y.re) (/.f64 (*.f64 x.im (*.f64 y.im y.re)) x.re))) (/.f64 (pow.f64 y.re 3) x.re)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (fma.f64 y.re y.re (*.f64 x.im (neg.f64 (*.f64 y.im (/.f64 y.re x.re)))))) (/.f64 (pow.f64 y.re 3) x.re)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 y.re) (*.f64 x.im (/.f64 y.im y.re))))) (*.f64 y.re (neg.f64 y.re))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (+.f64 (neg.f64 (*.f64 y.re x.re)) (*.f64 x.im (*.f64 (/.f64 y.im y.re) y.re)))) (*.f64 y.re (neg.f64 y.re))) |
(*.f64 y.re (*.f64 (neg.f64 y.re) (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (*.f64 y.re (+.f64 (neg.f64 x.re) (*.f64 x.im (/.f64 y.im y.re))))))) |
(/.f64 (*.f64 (*.f64 y.re y.re) (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2))) (*.f64 y.re (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (-.f64 (*.f64 (neg.f64 x.re) (*.f64 y.re y.re)) (*.f64 (neg.f64 y.re) (*.f64 x.im y.im)))) (neg.f64 (pow.f64 y.re 3))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (+.f64 (*.f64 y.re (neg.f64 (*.f64 y.re x.re))) (*.f64 x.im (*.f64 y.im y.re)))) (neg.f64 (pow.f64 y.re 3))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (neg.f64 (*.f64 y.re (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (*.f64 (pow.f64 y.re 3) (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2))) (*.f64 y.re (neg.f64 (-.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re)))))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) (-.f64 (pow.f64 (/.f64 x.re y.re) 4) (*.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re)))))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (-.f64 (pow.f64 (/.f64 x.re y.re) 4) (*.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (*.f64 (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re)))))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re)))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (-.f64 (pow.f64 (/.f64 x.re y.re) 4) (*.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (*.f64 (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re))))) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (-.f64 (*.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) (pow.f64 (/.f64 x.re y.re) 2))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (*.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re))) 3))) (+.f64 (pow.f64 (/.f64 x.re y.re) 4) (*.f64 (*.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re))) (fma.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re)) (neg.f64 (pow.f64 (/.f64 x.re y.re) 2)))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (+.f64 (pow.f64 (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re)))) 3) (pow.f64 (/.f64 x.re y.re) 6))) (fma.f64 (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re)))) (-.f64 (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re)))) (pow.f64 (/.f64 x.re y.re) 2)) (pow.f64 (/.f64 x.re y.re) 4))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (+.f64 (pow.f64 (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re))) 3) (pow.f64 (/.f64 x.re y.re) 6))) (fma.f64 (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re))) (-.f64 (*.f64 x.im (*.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re))) (pow.f64 (/.f64 x.re y.re) 2)) (pow.f64 (/.f64 x.re y.re) 4))) |
(/.f64 1 (/.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) 1) (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 y.re (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)) 1) (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 6) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 6) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 6)) (*.f64 (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (-.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re)) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2))) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 4) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 4)) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 4) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 4)) (*.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)))) y.re) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 x.re y.re) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (-.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) (pow.f64 (/.f64 x.re y.re) 3)))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))) (+.f64 (pow.f64 (/.f64 x.re y.re) 6) (*.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3) (-.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3) (pow.f64 (/.f64 x.re y.re) 3)))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 3) 3) (pow.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3) 3)) (*.f64 (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (fma.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3) (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3) (pow.f64 (/.f64 x.re y.re) 3)) (pow.f64 (/.f64 x.re y.re) 6)))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) 3)) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (+.f64 (*.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 x.re y.re) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.re y.re) 2) 3) (pow.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) 3)) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)) (+.f64 (pow.f64 (/.f64 x.re y.re) 4) (+.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 4)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 6) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 6)) (*.f64 (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (fma.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (+.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)) (pow.f64 (/.f64 x.re y.re) 4)))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 y.re (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 y.re y.re)) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) y.re))) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re (fma.f64 x.im (/.f64 y.im y.re) x.re)) (*.f64 y.re y.re)) |
(/.f64 (+.f64 (*.f64 x.re (*.f64 y.re y.re)) (*.f64 y.re (*.f64 x.im y.im))) (pow.f64 y.re 3)) |
(/.f64 (fma.f64 x.re (*.f64 y.re y.re) (*.f64 x.im (*.f64 y.im y.re))) (pow.f64 y.re 3)) |
(/.f64 (*.f64 y.re (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (pow.f64 y.re 3)) |
(/.f64 (+.f64 y.re (*.f64 (/.f64 y.re x.re) (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 (/.f64 y.re x.re) y.re)) |
(/.f64 (+.f64 y.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (/.f64 y.re x.re))) (*.f64 y.re (/.f64 y.re x.re))) |
(*.f64 (/.f64 (fma.f64 x.im (*.f64 (/.f64 y.im y.re) (/.f64 y.re x.re)) y.re) (*.f64 y.re y.re)) x.re) |
(/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 (/.f64 y.re x.re) (*.f64 x.im y.im))) (*.f64 (/.f64 y.re x.re) (*.f64 y.re y.re))) |
(/.f64 (fma.f64 y.re y.re (/.f64 (*.f64 x.im (*.f64 y.im y.re)) x.re)) (/.f64 (pow.f64 y.re 3) x.re)) |
(/.f64 (fma.f64 x.im (*.f64 y.im (/.f64 y.re x.re)) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.re 3) x.re)) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 (neg.f64 y.re) (*.f64 x.im (/.f64 y.im y.re)))) (*.f64 y.re (neg.f64 y.re))) |
(/.f64 (fma.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 y.re) (neg.f64 (*.f64 y.re x.re))) (*.f64 y.re (neg.f64 y.re))) |
(/.f64 (neg.f64 (*.f64 y.re (fma.f64 x.im (/.f64 y.im y.re) x.re))) (neg.f64 (*.f64 y.re y.re))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.re) (*.f64 y.re y.re)) (*.f64 (neg.f64 y.re) (*.f64 x.im y.im))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (fma.f64 (*.f64 y.im x.im) (neg.f64 y.re) (*.f64 y.re (neg.f64 (*.f64 y.re x.re)))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (neg.f64 (*.f64 y.re (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (*.f64 y.re (-.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re x.re))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) (*.f64 y.re x.re)) (*.f64 y.re y.re)) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) y.re))) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re (fma.f64 x.im (/.f64 y.im y.re) x.re)) (*.f64 y.re y.re)) |
(/.f64 (+.f64 y.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (/.f64 y.re x.re))) (*.f64 y.re (/.f64 y.re x.re))) |
(*.f64 (/.f64 (fma.f64 x.im (*.f64 (/.f64 y.im y.re) (/.f64 y.re x.re)) y.re) (*.f64 y.re y.re)) x.re) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 y.re)) (*.f64 y.re (neg.f64 x.re))) (*.f64 y.re (neg.f64 y.re))) |
(/.f64 (fma.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 y.re) (neg.f64 (*.f64 y.re x.re))) (*.f64 y.re (neg.f64 y.re))) |
(/.f64 (neg.f64 (*.f64 y.re (fma.f64 x.im (/.f64 y.im y.re) x.re))) (neg.f64 (*.f64 y.re y.re))) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) y.re) (*.f64 (*.f64 y.re y.re) x.re)) (pow.f64 y.re 3)) |
(/.f64 (fma.f64 x.re (*.f64 y.re y.re) (*.f64 x.im (*.f64 y.im y.re))) (pow.f64 y.re 3)) |
(/.f64 (*.f64 y.re (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im))) (pow.f64 y.re 3)) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re y.re) 1) (*.f64 (*.f64 x.im y.im) (/.f64 y.re x.re))) (*.f64 (*.f64 y.re y.re) (/.f64 y.re x.re))) |
(/.f64 (fma.f64 y.re y.re (/.f64 (*.f64 x.im (*.f64 y.im y.re)) x.re)) (/.f64 (pow.f64 y.re 3) x.re)) |
(/.f64 (fma.f64 x.im (*.f64 y.im (/.f64 y.re x.re)) (*.f64 y.re y.re)) (/.f64 (pow.f64 y.re 3) x.re)) |
(/.f64 (+.f64 (*.f64 (*.f64 x.im y.im) (neg.f64 y.re)) (*.f64 (*.f64 y.re y.re) (neg.f64 x.re))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (fma.f64 (*.f64 y.im x.im) (neg.f64 y.re) (*.f64 y.re (neg.f64 (*.f64 y.re x.re)))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (neg.f64 (*.f64 y.re (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (*.f64 y.re (-.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re x.re))) (neg.f64 (pow.f64 y.re 3))) |
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 x.re y.re) 2)) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (neg.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re)) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re)) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) |
(*.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)))) |
(pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 1) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(pow.f64 (sqrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 2) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 3) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(pow.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 3) 1/3) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.re y.re) 2) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) (/.f64 (neg.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) y.re))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (/.f64 x.re y.re))) |
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2) (pow.f64 (/.f64 x.re y.re) 2)) (/.f64 (+.f64 (*.f64 x.im (/.f64 y.im y.re)) (neg.f64 x.re)) y.re)) |
(neg.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2) (*.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re))))) |
(*.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 x.re y.re) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 3)) (fma.f64 (/.f64 x.re y.re) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) y.re) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) 2)))) |
(sqrt.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 2)) |
(fabs.f64 (/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re)) |
(log.f64 (exp.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) 3)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(expm1.f64 (log1p.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(exp.f64 (log.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re))) 1)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(log1p.f64 (expm1.f64 (fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)))) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 x.re (/.f64 1 y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im y.re) (/.f64 x.re y.re)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 1 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 1 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (/.f64 x.re y.re)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 (sqrt.f64 (/.f64 x.re y.re)) (sqrt.f64 (/.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) (/.f64 x.re y.re)) |
(+.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re) 2) (/.f64 x.re y.re)) |
(+.f64 (/.f64 x.re y.re) (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re) 2)) |
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.re y.re)) 2) (cbrt.f64 (/.f64 x.re y.re)) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 2) (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (/.f64 x.re y.re)) |
(fma.f64 (/.f64 x.im y.re) (/.f64 y.im y.re) (/.f64 x.re y.re)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) y.re) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) 1) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 x.im (*.f64 y.re (/.f64 y.re y.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (/.f64 x.im y.re) (/.f64 y.re y.im)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 y.im (*.f64 y.re (/.f64 y.re x.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 y.im (*.f64 (/.f64 y.re x.im) y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 1 (*.f64 (/.f64 y.re y.im) (/.f64 y.re x.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 1 (/.f64 (*.f64 y.re y.re) (*.f64 x.im y.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (sqrt.f64 y.im) (*.f64 (/.f64 y.re x.im) (/.f64 y.re (sqrt.f64 y.im)))) |
(/.f64 (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)) (/.f64 y.re (sqrt.f64 y.im))) |
(*.f64 (/.f64 (sqrt.f64 y.im) (/.f64 y.re (/.f64 x.im y.re))) (sqrt.f64 y.im)) |
(/.f64 (sqrt.f64 x.im) (*.f64 (/.f64 y.re y.im) (/.f64 y.re (sqrt.f64 x.im)))) |
(/.f64 (sqrt.f64 x.im) (/.f64 (*.f64 y.re (/.f64 y.re y.im)) (sqrt.f64 x.im))) |
(/.f64 (sqrt.f64 x.im) (/.f64 y.re (*.f64 (sqrt.f64 x.im) (/.f64 y.im y.re)))) |
(/.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (/.f64 y.re x.im) (/.f64 y.re (cbrt.f64 y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 y.re (/.f64 x.im y.re))) (cbrt.f64 y.im)) |
(/.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (/.f64 y.re y.im) (/.f64 y.re (cbrt.f64 x.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 y.re (/.f64 y.re y.im))) (cbrt.f64 x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 x.im y.im) (*.f64 y.re y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re x.im) (neg.f64 y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (neg.f64 y.im) (*.f64 (neg.f64 y.re) (/.f64 y.re x.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (neg.f64 x.im) (*.f64 (/.f64 y.re y.im) (neg.f64 y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (neg.f64 x.im) (*.f64 (neg.f64 y.re) (/.f64 y.re y.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 x.im (neg.f64 y.im)) (*.f64 y.re (neg.f64 y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (/.f64 y.im 1) (*.f64 (/.f64 y.re x.im) y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (/.f64 y.im (sqrt.f64 y.re)) (*.f64 (/.f64 y.re x.im) (sqrt.f64 y.re))) |
(/.f64 (/.f64 y.im (sqrt.f64 y.re)) (/.f64 (*.f64 y.re (sqrt.f64 y.re)) x.im)) |
(/.f64 (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2)) (*.f64 (/.f64 y.re x.im) (cbrt.f64 y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (/.f64 x.im (*.f64 (sqrt.f64 y.re) (/.f64 y.re y.im))) (sqrt.f64 y.re)) |
(/.f64 x.im (*.f64 (sqrt.f64 y.re) (*.f64 (/.f64 y.re y.im) (sqrt.f64 y.re)))) |
(/.f64 x.im (*.f64 (/.f64 y.re y.im) (*.f64 (sqrt.f64 y.re) (sqrt.f64 y.re)))) |
(/.f64 (/.f64 (*.f64 x.im (/.f64 y.im y.re)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (/.f64 x.im 1) (/.f64 y.re (/.f64 y.im y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (/.f64 x.im (sqrt.f64 y.re)) (*.f64 (/.f64 y.re y.im) (sqrt.f64 y.re))) |
(/.f64 x.im (*.f64 (sqrt.f64 y.re) (*.f64 (/.f64 y.re y.im) (sqrt.f64 y.re)))) |
(/.f64 x.im (*.f64 (/.f64 y.re y.im) (*.f64 (sqrt.f64 y.re) (sqrt.f64 y.re)))) |
(/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 y.re) 2)) (*.f64 (/.f64 y.re y.im) (cbrt.f64 y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 -1 (*.f64 (/.f64 y.re y.im) (/.f64 y.re (neg.f64 x.im)))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 -1 (*.f64 (/.f64 y.re x.im) (/.f64 y.re (neg.f64 y.im)))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 (neg.f64 y.im) (neg.f64 x.im)) (*.f64 (neg.f64 y.re) (neg.f64 y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 x.im (/.f64 (neg.f64 y.im) y.re)) (neg.f64 y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 1) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 x.im y.im)) y.re) 2) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re) 2) |
(pow.f64 (cbrt.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 3) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(pow.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3) 1/3) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(neg.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im (neg.f64 y.re)))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(neg.f64 (/.f64 (*.f64 x.im y.im) (*.f64 y.re (neg.f64 y.re)))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(sqrt.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 2)) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) 2)) |
(fabs.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) |
(log.f64 (exp.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(cbrt.f64 (pow.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) 3)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(expm1.f64 (log1p.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(exp.f64 (log.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) 1)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(log1p.f64 (expm1.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| 100.0% | (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) | |
| ✓ | 74.9% | (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 34 to 9 computations (73.5% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x.im | @ | inf | (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 0.0ms | x.im | @ | 0 | (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 0.0ms | y.im | @ | 0 | (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 0.0ms | y.im | @ | inf | (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 0.0ms | x.im | @ | -inf | (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 1× | batch-egg-rewrite |
| 1438× | associate-/r* |
| 1350× | associate-/l* |
| 1342× | associate-*r/ |
| 1100× | *-commutative |
| 960× | associate-*l/ |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 27 |
| 1 | 217 | 25 |
| 2 | 3112 | 25 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im x.im) (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (/.f64 (*.f64 y.im x.im) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2)) (*.f64 y.im x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))) (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (sqrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 y.im (/.f64 (hypot.f64 y.im y.re) x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (/.f64 (hypot.f64 y.im y.re) x.im)) (/.f64 1 (hypot.f64 y.im y.re))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) y.im) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 y.im 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (hypot.f64 y.im y.re)) (/.f64 y.im (hypot.f64 y.im y.re))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)) x.im) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 x.im 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.im x.im) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.im y.re) 2)) (*.f64 y.im (neg.f64 x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im 1) (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (hypot.f64 y.im y.re)) (/.f64 x.im (hypot.f64 y.im y.re))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im 1) (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.im y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.im y.re))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) 2) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) 3) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3) 1/3) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) (*.f64 y.im x.im)) -1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 y.im (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1696× | associate-/l* |
| 1346× | times-frac |
| 1318× | associate-+r- |
| 934× | associate-/r* |
| 608× | *-commutative |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 178 | 3961 |
| 1 | 498 | 3799 |
| 2 | 1889 | 3663 |
| 3 | 7539 | 3663 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (*.f64 y.im x.im) (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1) |
(*.f64 1 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(*.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (/.f64 (*.f64 y.im x.im) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2)) (*.f64 y.im x.im)) |
(*.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))) (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1)) |
(*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 y.im (/.f64 (hypot.f64 y.im y.re) x.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 y.im (/.f64 (hypot.f64 y.im y.re) x.im)) (/.f64 1 (hypot.f64 y.im y.re))) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) y.im) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 y.im 1)) |
(*.f64 (/.f64 x.im (hypot.f64 y.im y.re)) (/.f64 y.im (hypot.f64 y.im y.re))) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)) x.im) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 x.im 1)) |
(*.f64 (/.f64 (*.f64 y.im x.im) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.im y.re) 2)) (*.f64 y.im (neg.f64 x.im))) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (/.f64 y.im (hypot.f64 y.im y.re)) (/.f64 x.im (hypot.f64 y.im y.re))) |
(*.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.im y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.im y.re))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) 2) |
(pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) 3) |
(pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3) 1/3) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) (*.f64 y.im x.im)) -1) |
(neg.f64 (/.f64 y.im (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) x.im))) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2)) |
(log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))))) |
(cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3)) |
(expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
| Outputs |
|---|
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(*.f64 x.im (-.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))) |
(+.f64 (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) |
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))) |
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8))))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) |
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) |
(-.f64 (/.f64 x.im y.im) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)))) |
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))) |
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) x.im)) (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) |
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) |
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) |
(-.f64 (/.f64 x.im y.im) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)))) |
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))) |
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) x.im)) (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) |
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) |
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) |
(-.f64 (/.f64 x.im y.im) (*.f64 x.im (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)))) |
(+.f64 (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))))) |
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) x.im)) (-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) |
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 y.re (/.f64 (pow.f64 y.im 3) y.re)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(*.f64 x.im (-.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))) |
(+.f64 (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) |
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))) |
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8))))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(*.f64 x.im (-.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))) |
(+.f64 (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) |
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))) |
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (*.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) x.im)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8))))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 (/.f64 y.im y.re) y.re) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (*.f64 y.im x.im) (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 1 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2))) |
(*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (cbrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2))) |
(*.f64 (cbrt.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im))) (cbrt.f64 (pow.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) 2))) |
(*.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) 4))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2) (cbrt.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (cbrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2))) |
(*.f64 (cbrt.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im))) (cbrt.f64 (pow.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) 2))) |
(*.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) 4))) |
(*.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (/.f64 (*.f64 y.im x.im) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(/.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (*.f64 y.im x.im))) |
(*.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (*.f64 x.im (/.f64 y.im (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.im y.re) 2)) (*.f64 y.im x.im)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))) (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) |
(*.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))) (*.f64 (/.f64 y.im (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) x.im)) |
(/.f64 (-.f64 (+.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (pow.f64 (*.f64 y.im y.re) 2)) (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (*.f64 y.im x.im))) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.im y.re)) (/.f64 y.im (/.f64 (hypot.f64 y.im y.re) x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 y.im (/.f64 (hypot.f64 y.im y.re) x.im)) (/.f64 1 (hypot.f64 y.im y.re))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) y.im) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 y.im 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 x.im (hypot.f64 y.im y.re)) (/.f64 y.im (hypot.f64 y.im y.re))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)) x.im) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)) (/.f64 x.im 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (*.f64 y.im x.im) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (/.f64 (*.f64 y.im x.im) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)))) |
(/.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (*.f64 y.im x.im))) |
(*.f64 (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (*.f64 x.im (/.f64 y.im (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2)))) |
(*.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))) (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) |
(*.f64 (+.f64 (pow.f64 y.im 4) (-.f64 (pow.f64 y.re 4) (pow.f64 (*.f64 y.im y.re) 2))) (*.f64 (/.f64 y.im (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) x.im)) |
(/.f64 (-.f64 (+.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (pow.f64 (*.f64 y.im y.re) 2)) (/.f64 (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (*.f64 y.im x.im))) |
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.im y.re) 2)) (*.f64 y.im (neg.f64 x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.im y.re)) (/.f64 x.im (hypot.f64 y.im y.re))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(/.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.im y.re) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.im y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.im y.re))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2) (cbrt.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im))))) |
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.im y.re)) 2) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))) 3) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3) 1/3) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) (*.f64 y.im x.im)) -1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(neg.f64 (/.f64 y.im (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.im y.re) 2)) x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 2)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2)))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))) 3)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
(log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.im y.re) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.im y.re) 2))) |
(/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.im y.re) 2) y.im)) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.im y.re) 2)) |
Found 1 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 74.9% | (/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
Compiled 29 to 8 computations (72.4% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y.re | @ | 0 | (/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | x.im | @ | inf | (/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | y.im | @ | 0 | (/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | x.im | @ | 0 | (/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 0.0ms | y.im | @ | inf | (/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| 1× | batch-egg-rewrite |
| 1248× | associate-/r* |
| 1140× | associate-/l* |
| 992× | *-commutative |
| 876× | associate-*r/ |
| 628× | swap-sqr |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 27 |
| 1 | 204 | 25 |
| 2 | 2686 | 25 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im x.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 y.im x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 y.im (/.f64 (hypot.f64 y.re y.im) x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (/.f64 (hypot.f64 y.re y.im) x.im)) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 y.im 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)) x.im) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 x.im 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 y.im (neg.f64 x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im 1) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im 1) (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 x.im))) (sqrt.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.im)) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (neg.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 x.im) 2))) (cbrt.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2))) (cbrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.im)) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (/.f64 1 y.im)) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (/.f64 1 y.im)) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 2) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 3) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 3) 1/3) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)) -1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (*.f64 y.im (neg.f64 x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im))) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (*.f64 y.im x.im) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 1 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 3)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1468× | associate-/r* |
| 784× | *-commutative |
| 610× | associate-/r/ |
| 596× | unswap-sqr |
| 594× | associate-/l/ |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 216 | 4196 |
| 1 | 631 | 4006 |
| 2 | 2467 | 3866 |
| 3 | 7966 | 3866 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (*.f64 y.im x.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 1) |
(*.f64 1 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 2)) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 y.im x.im)) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 y.im (/.f64 (hypot.f64 y.re y.im) x.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 y.im (/.f64 (hypot.f64 y.re y.im) x.im)) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 y.im 1)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)) x.im) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 x.im 1)) |
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 y.im (neg.f64 x.im))) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (*.f64 y.im x.im))) |
(*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 x.im))) (sqrt.f64 x.im)) |
(*.f64 (/.f64 (sqrt.f64 y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.im)) (sqrt.f64 y.im)) |
(*.f64 (/.f64 y.im (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (neg.f64 x.im)) |
(*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 x.im) 2))) (cbrt.f64 x.im)) |
(*.f64 (/.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2))) (cbrt.f64 (*.f64 y.im x.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.im)) (cbrt.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im (/.f64 1 y.im)) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (/.f64 x.im (/.f64 1 y.im)) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 1) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 2) |
(pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 3) |
(pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 3) 1/3) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)) -1) |
(neg.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im)))) |
(neg.f64 (/.f64 (*.f64 y.im (neg.f64 x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(neg.f64 (*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im))) 1)) |
(neg.f64 (*.f64 (*.f64 y.im x.im) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(neg.f64 (*.f64 1 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im))))) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))))) |
(cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 3)) |
(expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
| Outputs |
|---|
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))) |
(+.f64 (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) |
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))) |
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8))))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))) |
(-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) |
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)))) |
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) x.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im))) |
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))) |
(-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) |
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)))) |
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) x.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im))) |
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re))) x.im) |
(*.f64 x.im (/.f64 y.im (fma.f64 y.im y.im (*.f64 y.re y.re)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 x.im y.im) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.im y.im) (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))) |
(-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) |
(-.f64 (/.f64 x.im y.im) (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (neg.f64 (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)))) |
(+.f64 (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 x.im (-.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 5)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 (*.f64 x.im (pow.f64 y.re 4)) (pow.f64 y.im 5)) (*.f64 -1 (+.f64 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 7) x.im)) (/.f64 (*.f64 x.im (*.f64 y.re y.re)) (pow.f64 y.im 3)))))) |
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im) (*.f64 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7)) x.im)) (-.f64 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im))) |
(-.f64 (fma.f64 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 5)) x.im (/.f64 x.im y.im)) (*.f64 x.im (+.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 7))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))) |
(+.f64 (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) |
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))) |
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8))))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im)))) |
(+.f64 (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) |
(fma.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im (*.f64 x.im (-.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 8))) (+.f64 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 6)) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im)) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (/.f64 (pow.f64 y.im 5) (/.f64 (pow.f64 y.re 6) x.im))))) |
(-.f64 (-.f64 (+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)) x.im)) (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 8) x.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8))))) |
(-.f64 (*.f64 x.im (+.f64 (/.f64 y.im (*.f64 y.re y.re)) (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 6)))) (*.f64 x.im (+.f64 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 8)) (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (*.f64 y.im x.im) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 1 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 2)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 y.im x.im)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 y.im (/.f64 (hypot.f64 y.re y.im) x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 y.im (/.f64 (hypot.f64 y.re y.im) x.im)) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 y.im 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)) x.im) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 x.im 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)) (*.f64 y.im (neg.f64 x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 y.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 (*.f64 y.im x.im) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (*.f64 y.im (/.f64 x.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (/.f64 y.im (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.re y.im)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2))) |
(*.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2))) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) 2)) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (pow.f64 (hypot.f64 y.re y.im) 2)) (cbrt.f64 (*.f64 y.im x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (sqrt.f64 x.im))) (sqrt.f64 x.im)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (sqrt.f64 y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.im)) (sqrt.f64 y.im)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 y.im (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2))) (neg.f64 x.im)) |
(*.f64 (neg.f64 x.im) (/.f64 y.im (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 y.im (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) (neg.f64 x.im))) |
(/.f64 (neg.f64 x.im) (/.f64 (neg.f64 (pow.f64 (hypot.f64 y.re y.im) 2)) y.im)) |
(*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 x.im) 2))) (cbrt.f64 x.im)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (*.f64 y.im (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) x.im)) |
(*.f64 (/.f64 (*.f64 x.im (fma.f64 y.im (neg.f64 y.im) (*.f64 y.re y.re))) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) y.im) |
(*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 (*.f64 y.im y.im) 3))) (fma.f64 y.re (pow.f64 y.re 3) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(*.f64 (*.f64 (/.f64 y.im (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) x.im) (+.f64 (pow.f64 y.re 4) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(*.f64 (*.f64 x.im (/.f64 y.im (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (fma.f64 (*.f64 y.im y.im) (*.f64 (+.f64 y.im y.re) (-.f64 y.im y.re)) (pow.f64 y.re 4))) |
(*.f64 (/.f64 1 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2))) (cbrt.f64 (*.f64 y.im x.im))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.im)) (cbrt.f64 y.im)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(*.f64 (/.f64 (/.f64 x.im (/.f64 1 y.im)) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (-.f64 (*.f64 y.re (pow.f64 y.re 3)) (pow.f64 y.im 4))) (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (*.f64 y.im (-.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) x.im)) |
(*.f64 (/.f64 (*.f64 x.im (fma.f64 y.im (neg.f64 y.im) (*.f64 y.re y.re))) (-.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) y.im) |
(*.f64 (/.f64 (/.f64 x.im (/.f64 1 y.im)) (+.f64 (pow.f64 (*.f64 y.im y.im) 3) (pow.f64 (*.f64 y.re y.re) 3))) (+.f64 (*.f64 y.re (pow.f64 y.re 3)) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 6) (pow.f64 (*.f64 y.im y.im) 3))) (fma.f64 y.re (pow.f64 y.re 3) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(*.f64 (*.f64 (/.f64 y.im (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) x.im) (+.f64 (pow.f64 y.re 4) (-.f64 (pow.f64 y.im 4) (*.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(*.f64 (*.f64 x.im (/.f64 y.im (+.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)))) (fma.f64 (*.f64 y.im y.im) (*.f64 (+.f64 y.im y.re) (-.f64 y.im y.re)) (pow.f64 y.re 4))) |
(pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (hypot.f64 y.re y.im)) 2) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))) 3) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 3) 1/3) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)) -1) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im)))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (/.f64 (*.f64 y.im (neg.f64 x.im)) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (*.f64 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im))) 1)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (*.f64 (*.f64 y.im x.im) (/.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(neg.f64 (*.f64 1 (/.f64 y.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (neg.f64 x.im))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 2)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2)))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))) 3)) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (pow.f64 (hypot.f64 y.re y.im) 2))))) |
(*.f64 y.im (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) |
(/.f64 (*.f64 y.im x.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
Compiled 27000 to 8978 computations (66.7% saved)
22 alts after pruning (21 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1114 | 17 | 1131 |
| Fresh | 4 | 4 | 8 |
| Picked | 1 | 0 | 1 |
| Done | 3 | 1 | 4 |
| Total | 1122 | 22 | 1144 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 25.2% | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| 18.4% | (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) | |
| ▶ | 20.3% | (/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
| 32.7% | (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) | |
| 16.9% | (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) | |
| 38.4% | (/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) | |
| ▶ | 46.6% | (/.f64 x.re y.re) |
| ✓ | 36.6% | (/.f64 x.im y.im) |
| 54.6% | (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) | |
| 42.8% | (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) | |
| 58.3% | (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) | |
| 53.1% | (*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) | |
| 19.0% | (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) | |
| 24.5% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) | |
| 71.9% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) | |
| ▶ | 84.4% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
| ▶ | 34.7% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
| 24.9% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) | |
| 24.2% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) | |
| 33.3% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) | |
| 18.8% | (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) | |
| 17.8% | (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
Compiled 607 to 377 computations (37.9% saved)
Found 4 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| 100.0% | (/.f64 1 (hypot.f64 y.re y.im)) | |
| ✓ | 99.5% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
| ✓ | 93.7% | (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) |
| ✓ | 83.7% | (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) |
Compiled 75 to 16 computations (78.7% saved)
30 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | y.re | @ | 0 | (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) |
| 1.0ms | x.re | @ | 0 | (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) |
| 1.0ms | x.re | @ | inf | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
| 1.0ms | x.im | @ | 0 | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
| 1.0ms | x.re | @ | 0 | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
| 1× | batch-egg-rewrite |
| 1842× | associate-/r/ |
| 1356× | associate-/l/ |
| 352× | add-sqr-sqrt |
| 348× | *-un-lft-identity |
| 346× | pow1 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 93 |
| 1 | 338 | 89 |
| 2 | 5334 | 89 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) |
(/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.re (*.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.re (*.f64 1 (/.f64 x.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.re (*.f64 y.re (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.re x.re) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.re x.re)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 y.re x.re)) (*.f64 (sqrt.f64 (*.f64 y.re x.re)) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (*.f64 y.re x.re) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2) (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (*.f64 (cbrt.f64 (*.f64 y.re x.re)) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (*.f64 y.re x.re) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.re x.re) 1) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.re x.re) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (*.f64 y.re x.re) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) y.re) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 y.re (neg.f64 x.re))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 y.re x.re) (neg.f64 (hypot.f64 y.re y.im))) -1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 1 (/.f64 x.re (hypot.f64 y.re y.im))) y.re) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re 1) (/.f64 x.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 x.re (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re 1) (/.f64 y.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) 1) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) (sqrt.f64 (*.f64 y.re x.re))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 x.re)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 x.re))) (sqrt.f64 x.re)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 x.re) 2))) (cbrt.f64 x.re)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) y.re)) x.re) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (*.f64 y.re x.re)))) (sqrt.f64 (*.f64 y.re x.re))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2))) (cbrt.f64 (*.f64 y.re x.re))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 y.re) (/.f64 (hypot.f64 y.re y.im) x.re)) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 y.re) 2) (/.f64 (hypot.f64 y.re y.im) x.re)) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (*.f64 y.re x.re))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) 1) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (neg.f64 (hypot.f64 y.re y.im))) -1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) -1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) 1/3) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (*.f64 y.re x.re) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im 1) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (cbrt.f64 x.im) (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) x.im) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 x.im) (*.f64 -1 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (sqrt.f64 y.im)) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im 1) (/.f64 y.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (/.f64 x.im (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 x.im (neg.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 -1 (/.f64 y.im (hypot.f64 y.re y.im))) (neg.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (sqrt.f64 x.im) 1) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.im) 1) (*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) y.im) (sqrt.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (cbrt.f64 x.im) 1) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) 1) (*.f64 (/.f64 (cbrt.f64 x.im) (hypot.f64 y.re y.im)) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (/.f64 (cbrt.f64 x.im) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 1) y.im) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 1) (/.f64 y.im 1)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) -1) (neg.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im -1) (neg.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 (neg.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 x.im) y.im))) (sqrt.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (pow.f64 (cbrt.f64 x.im) 2) y.im))) (cbrt.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (/.f64 (hypot.f64 y.re y.im) y.im)) (cbrt.f64 x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 y.im))) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (neg.f64 x.im) -1) (/.f64 y.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (neg.f64 x.im) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 x.im y.im) 1) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 x.im y.im) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 x.im y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (*.f64 x.im y.im) (neg.f64 (hypot.f64 y.re y.im))) -1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) 1) (/.f64 y.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) -1) (neg.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im 1) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 (neg.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) 1) (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) 1) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (neg.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 3) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) -1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) 1/3) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((+.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) -1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) y.im) (pow.f64 (hypot.f64 y.re y.im) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (*.f64 (hypot.f64 y.re y.im) x.im)) (*.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (-.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) (*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))) (-.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 y.re y.im) x.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (+.f64 (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (*.f64 (hypot.f64 y.re y.im) x.im)) (-.f64 (*.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) (+.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) (+.f64 (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) (-.f64 (*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (+.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 y.re (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 y.re (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 y.re (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (*.f64 y.re x.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (hypot.f64 y.re y.im) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (hypot.f64 y.re y.im) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (hypot.f64 y.re y.im) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) y.re) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (/.f64 (hypot.f64 y.re y.im) x.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) y.re)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (/.f64 (hypot.f64 y.re y.im) x.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 y.re x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (neg.f64 (hypot.f64 y.re y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) x.re)) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) y.re)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (/.f64 (hypot.f64 y.re y.im) x.re)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 y.re x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.im) (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) 1) (*.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) -1) (*.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) 1) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) -1) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 2) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 3) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 3)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)) (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im))))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1696× | associate-*r* |
| 1520× | associate-*l* |
| 1336× | associate-/r* |
| 1182× | associate-*r/ |
| 1000× | associate-*l/ |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1025 | 20575 |
| 1 | 3232 | 20203 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 7) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 (*.f64 x.re y.re) y.im)))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re)) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 6)))))) |
(*.f64 -1 x.re) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (*.f64 -1 x.re)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (*.f64 -1 x.re)))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 6))) (*.f64 -1 x.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re)) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.re 2)))) (pow.f64 y.im 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re))) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (/.f64 (*.f64 x.re y.re) y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 7))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5))))))) (pow.f64 y.im 7)))))) |
(*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 7)))))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
x.im |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 x.im (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 4))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 4)))) (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 4))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 4)))) (pow.f64 y.im 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.im 6)))) (pow.f64 y.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 x.im (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 4))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 4)))) (pow.f64 y.re 4)))))) |
(/.f64 (*.f64 y.im x.im) y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (/.f64 (*.f64 y.im x.im) y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.re 5))))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.im 2))) (*.f64 1/8 (*.f64 (pow.f64 y.im 7) x.im))) (pow.f64 y.re 7))) (+.f64 (/.f64 (*.f64 y.im x.im) y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.re 5)))))) |
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5)))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 7))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.im 2)) (pow.f64 y.re 7)))))))) |
(/.f64 (*.f64 y.im x.im) y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.im 5) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))))) (/.f64 (*.f64 y.im x.im) y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.im 5) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.re 7)))) (pow.f64 y.im 7))) (/.f64 (*.f64 y.im x.im) y.re)))) |
x.im |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 4))) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 y.re 6) x.im)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)))) (pow.f64 y.im 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 4))) x.im))) |
(*.f64 -1 x.im) |
(+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))) |
(+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 6))) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)) (pow.f64 y.im 6)))))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.im 4))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 3)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.re 4)))) (pow.f64 y.im 3))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (/.f64 x.im y.im))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) 1) |
(*.f64 y.re (*.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 y.re (*.f64 1 (/.f64 x.re (hypot.f64 y.re y.im)))) |
(*.f64 x.re (*.f64 y.re (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 y.re x.re) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 1) |
(*.f64 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.re x.re)) |
(*.f64 (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (sqrt.f64 (*.f64 y.re x.re)) (*.f64 (sqrt.f64 (*.f64 y.re x.re)) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (*.f64 y.re x.re) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2) (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (*.f64 (cbrt.f64 (*.f64 y.re x.re)) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (*.f64 (*.f64 y.re x.re) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (*.f64 y.re x.re) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (*.f64 y.re x.re) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (*.f64 y.re x.re) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) y.re) |
(*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 y.re (neg.f64 x.re))) |
(*.f64 (/.f64 (*.f64 y.re x.re) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(*.f64 (*.f64 1 (/.f64 x.re (hypot.f64 y.re y.im))) y.re) |
(*.f64 (/.f64 y.re 1) (/.f64 x.re (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 x.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re 1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) 1) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) (sqrt.f64 (*.f64 y.re x.re))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 x.re)) |
(*.f64 (/.f64 y.re (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 x.re))) (sqrt.f64 x.re)) |
(*.f64 (/.f64 y.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 x.re) 2))) (cbrt.f64 x.re)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) y.re)) x.re) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (*.f64 y.re x.re)))) (sqrt.f64 (*.f64 y.re x.re))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2))) (cbrt.f64 (*.f64 y.re x.re))) |
(*.f64 (/.f64 (sqrt.f64 y.re) (/.f64 (hypot.f64 y.re y.im) x.re)) (sqrt.f64 y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.re) 2) (/.f64 (hypot.f64 y.re y.im) x.re)) (cbrt.f64 y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (*.f64 y.re x.re))) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 1) |
(pow.f64 (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2) |
(pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) -1) |
(pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) 1/3) |
(neg.f64 (/.f64 (*.f64 y.re x.re) (neg.f64 (hypot.f64 y.re y.im)))) |
(sqrt.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) |
(log.f64 (exp.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(cbrt.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) |
(expm1.f64 (log1p.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(exp.f64 (log.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) 1) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 1) |
(*.f64 1 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im 1) y.im)) |
(*.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (cbrt.f64 x.im) (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) x.im) |
(*.f64 (neg.f64 x.im) (*.f64 -1 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (sqrt.f64 y.im)) (sqrt.f64 y.im)) |
(*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im)) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (/.f64 x.im (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 x.im (neg.f64 y.im))) |
(*.f64 (*.f64 -1 (/.f64 y.im (hypot.f64 y.re y.im))) (neg.f64 x.im)) |
(*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (sqrt.f64 x.im) 1) y.im)) |
(*.f64 (/.f64 (sqrt.f64 x.im) 1) (*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) y.im)) |
(*.f64 (*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) y.im) (sqrt.f64 x.im)) |
(*.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (cbrt.f64 x.im) 1) y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) 1) (*.f64 (/.f64 (cbrt.f64 x.im) (hypot.f64 y.re y.im)) y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (/.f64 (cbrt.f64 x.im) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 1) y.im) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 1) (/.f64 y.im 1)) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) -1) (neg.f64 y.im)) |
(*.f64 (/.f64 x.im -1) (neg.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.im (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 (neg.f64 y.im))) |
(*.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 x.im) y.im))) (sqrt.f64 x.im)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (pow.f64 (cbrt.f64 x.im) 2) y.im))) (cbrt.f64 x.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (/.f64 (hypot.f64 y.re y.im) y.im)) (cbrt.f64 x.im)) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 (neg.f64 x.im) -1) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (neg.f64 x.im) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 y.im)) |
(*.f64 (/.f64 (*.f64 x.im y.im) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (*.f64 x.im y.im) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (/.f64 (*.f64 x.im y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (*.f64 x.im y.im) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(*.f64 (/.f64 (/.f64 x.im 1) 1) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.im 1) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.im 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.im 1) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im 1) -1) (neg.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.im 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im 1) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im 1) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 (neg.f64 y.im))) |
(*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) 1) (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 y.im))) |
(*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) 1) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (neg.f64 y.im))) |
(pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 1) |
(pow.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2) |
(pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 3) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) -1) |
(pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) 1/3) |
(neg.f64 (*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) y.im)) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) |
(log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) |
(expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(exp.f64 (*.f64 (log.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 1)) |
(log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(+.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) 1) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) |
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))))) |
(/.f64 (sqrt.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) |
(/.f64 (*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) -1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 -1 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) |
(/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) y.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(/.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (*.f64 (hypot.f64 y.re y.im) x.im)) (*.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (-.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)))) |
(/.f64 (-.f64 (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) (*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))) (-.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 y.re y.im) x.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (+.f64 (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (*.f64 (hypot.f64 y.re y.im) x.im)) (-.f64 (*.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) (+.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) (+.f64 (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) (-.f64 (*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (+.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)))))) |
(/.f64 (+.f64 (*.f64 y.re (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (+.f64 (*.f64 y.re (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (+.f64 (*.f64 y.re (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (*.f64 y.re x.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (hypot.f64 y.re y.im) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (hypot.f64 y.re y.im) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (+.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (+.f64 (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) y.re) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (/.f64 (hypot.f64 y.re y.im) x.re)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) |
(/.f64 (+.f64 (*.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) y.re)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (/.f64 (hypot.f64 y.re y.im) x.re)))) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 y.re x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) |
(/.f64 (+.f64 (neg.f64 (hypot.f64 y.re y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) x.re)) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) y.re)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (/.f64 (hypot.f64 y.re y.im) x.re)))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 y.re x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(/.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))))) |
(/.f64 (*.f64 -1 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) 1) (*.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) -1) (*.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) 1) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) -1) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))))) |
(/.f64 (neg.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) |
(/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (neg.f64 (hypot.f64 y.re y.im))) |
(pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 3) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 3) 1/3) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 3)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3))) |
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(fma.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) |
| Outputs |
|---|
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (/.f64 x.re (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im))) |
(fma.f64 -1 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (/.f64 x.re (/.f64 y.im y.re)))) |
(fma.f64 -1 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (*.f64 -3/8 (pow.f64 y.re 5))) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (/.f64 x.re (/.f64 y.im y.re)))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 7) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 (*.f64 x.re y.re) y.im)))) |
(fma.f64 -1 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (fma.f64 -1 (*.f64 (pow.f64 y.re 7) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (*.f64 y.im y.im))))) (/.f64 x.re (/.f64 y.im y.re))))) |
(fma.f64 -1 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) (*.f64 -3/8 (pow.f64 y.re 5))) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (fma.f64 -1 (*.f64 (pow.f64 y.re 7) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (/.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5)) (*.f64 y.im y.im))))) (/.f64 x.re (/.f64 y.im y.re))))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.re) |
(fma.f64 -1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) x.re) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re)) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 4)) (fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.re)) |
(fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 4)) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) x.re)) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 6)))))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 4)) (+.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.re) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 (*.f64 -1/2 (*.f64 y.im y.im)) (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8))) (pow.f64 y.re 6))))) |
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 4)) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) x.re)) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) -1/2))) (pow.f64 y.re 6)))) |
(*.f64 -1 x.re) |
(neg.f64 x.re) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (*.f64 -1 x.re)) |
(fma.f64 1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (neg.f64 x.re)) |
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) (neg.f64 x.re)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (*.f64 -1 x.re)))) |
(fma.f64 1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (fma.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (fma.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (neg.f64 x.re)))) |
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) (fma.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (fma.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (neg.f64 x.re)))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 6))) (*.f64 -1 x.re)))))) |
(fma.f64 1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (fma.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (fma.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (fma.f64 1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (/.f64 (pow.f64 y.re 6) (*.f64 y.im y.im))) (neg.f64 x.re)))))) |
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) (fma.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (fma.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4)) (fma.f64 1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (/.f64 (pow.f64 y.re 6) (*.f64 y.im y.im))) (neg.f64 x.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.re y.re)) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.re) |
(fma.f64 -1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) x.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re)) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) -3/8)) x.re)) |
(fma.f64 -1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 4))) x.re)) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.re 2)))) (pow.f64 y.im 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re))) |
(fma.f64 -1 (*.f64 (pow.f64 y.im 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.re 6)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 4)) -3/8) (*.f64 y.re y.re))))) (fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) -3/8)) x.re))) |
(fma.f64 -1 (*.f64 (pow.f64 y.im 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.re 6)) (*.f64 -1/2 (/.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 4)) (*.f64 y.re y.re))))) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) y.re) y.re) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 4))) x.re))) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (/.f64 x.re (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (/.f64 (*.f64 x.re y.re) y.im))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8) (pow.f64 y.im 5)) (/.f64 x.re (/.f64 y.im y.re)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 5) (*.f64 x.re -3/8)) (pow.f64 y.im 5)) (/.f64 x.re (/.f64 y.im y.re)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 7))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5))))))) (pow.f64 y.im 7)))))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (+.f64 (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8) (pow.f64 y.im 5)) (/.f64 x.re (/.f64 y.im y.re))) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.re 7)) (*.f64 (*.f64 -1/2 (*.f64 y.re y.re)) (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8))) (pow.f64 y.im 7))))) |
(+.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 5) (*.f64 x.re -3/8)) (pow.f64 y.im 5)) (/.f64 x.re (/.f64 y.im y.re)))) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.re 7)) (*.f64 (*.f64 (pow.f64 y.re 5) (*.f64 x.re -3/8)) (*.f64 (*.f64 y.re y.re) -1/2))) (pow.f64 y.im 7)))) |
(*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) |
(neg.f64 (/.f64 x.re (/.f64 y.im y.re))) |
(/.f64 (neg.f64 x.re) (/.f64 y.im y.re)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) 1/2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5)) (fma.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5)) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) 1/2)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) 1/2)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 7)))))))) |
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5)) (fma.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5)) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 7)))))))) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 5) (*.f64 x.re -3/8)) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (fma.f64 1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 (/.f64 (*.f64 1/8 x.re) (pow.f64 y.im 7)) (pow.f64 y.re 7))))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 y.im (*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
x.im |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) x.im) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 x.im (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 4))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 4)))) (pow.f64 y.re 4))))) |
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) x.im) (neg.f64 (*.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.im (pow.f64 y.im 4)) -3/8)))) |
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) x.im) (neg.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 4)) (*.f64 -3/8 (pow.f64 y.re 4))))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 4))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 4)))) (pow.f64 y.im 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.im 6)))) (pow.f64 y.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 x.im (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.im 4))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.im 4)))) (pow.f64 y.re 4)))))) |
(fma.f64 -1 (*.f64 (pow.f64 y.re 6) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 4)) -3/8) (*.f64 y.im y.im)) (/.f64 (*.f64 1/8 x.im) (pow.f64 y.im 6)))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) x.im) (neg.f64 (*.f64 (pow.f64 y.re 4) (*.f64 (/.f64 x.im (pow.f64 y.im 4)) -3/8))))) |
(fma.f64 -1 (*.f64 (pow.f64 y.re 6) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 4)) -3/8) (*.f64 y.im y.im)) (*.f64 1/8 (/.f64 x.im (pow.f64 y.im 6))))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) x.im) (neg.f64 (*.f64 (/.f64 x.im (pow.f64 y.im 4)) (*.f64 -3/8 (pow.f64 y.re 4)))))) |
(/.f64 (*.f64 y.im x.im) y.re) |
(/.f64 y.im (/.f64 y.re x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (/.f64 (*.f64 y.im x.im) y.re)) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (/.f64 (*.f64 y.im x.im) y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.re 5))))) |
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (/.f64 y.im (/.f64 y.re x.im))) (neg.f64 (/.f64 (*.f64 (*.f64 (pow.f64 y.im 5) x.im) -3/8) (pow.f64 y.re 5)))) |
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (/.f64 y.im (/.f64 y.re x.im))) (neg.f64 (/.f64 (*.f64 (pow.f64 y.im 5) (*.f64 x.im -3/8)) (pow.f64 y.re 5)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.im 2))) (*.f64 1/8 (*.f64 (pow.f64 y.im 7) x.im))) (pow.f64 y.re 7))) (+.f64 (/.f64 (*.f64 y.im x.im) y.re) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.re 5)))))) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (*.f64 (pow.f64 y.im 5) x.im) -3/8)) (*.f64 1/8 (*.f64 (pow.f64 y.im 7) x.im))) (pow.f64 y.re 7)) (+.f64 (/.f64 y.im (/.f64 y.re x.im)) (neg.f64 (/.f64 (*.f64 (*.f64 (pow.f64 y.im 5) x.im) -3/8) (pow.f64 y.re 5)))))) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (pow.f64 y.im 5) (*.f64 x.im -3/8))) (*.f64 (pow.f64 y.im 7) (*.f64 x.im 1/8))) (pow.f64 y.re 7)) (+.f64 (/.f64 y.im (/.f64 y.re x.im)) (neg.f64 (/.f64 (*.f64 (pow.f64 y.im 5) (*.f64 x.im -3/8)) (pow.f64 y.re 5)))))) |
(*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) |
(neg.f64 (/.f64 y.im (/.f64 y.re x.im))) |
(/.f64 (neg.f64 y.im) (/.f64 y.re x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)))) |
(fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (/.f64 (*.f64 1/2 (*.f64 (pow.f64 y.im 3) x.im)) (pow.f64 y.re 3))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5)))))) |
(fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (fma.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (/.f64 (*.f64 (*.f64 -1/4 (pow.f64 y.im 5)) x.im) (pow.f64 y.re 5))))) |
(fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (+.f64 (/.f64 (*.f64 1/2 (*.f64 (pow.f64 y.im 3) x.im)) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 5) (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 7))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.im 5) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.im 5) x.im))) (pow.f64 y.im 2)) (pow.f64 y.re 7)))))))) |
(fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (fma.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5)) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.im 5) x.im) (pow.f64 y.re 5)) (fma.f64 1/8 (/.f64 (*.f64 (pow.f64 y.im 7) x.im) (pow.f64 y.re 7)) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 y.im 5) x.im) -3/8) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im))))))))) |
(+.f64 (fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (+.f64 (/.f64 (*.f64 1/2 (*.f64 (pow.f64 y.im 3) x.im)) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.im 5) (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5))))) (fma.f64 1/8 (/.f64 (pow.f64 y.im 7) (/.f64 (pow.f64 y.re 7) x.im)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 5) (*.f64 x.im -3/8)) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im)))))) |
(/.f64 (*.f64 y.im x.im) y.re) |
(/.f64 y.im (/.f64 y.re x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (/.f64 (*.f64 y.im x.im) y.re)) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.im 5) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))))) (/.f64 (*.f64 y.im x.im) y.re))) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (fma.f64 -1 (*.f64 (pow.f64 y.im 5) (*.f64 (/.f64 x.im (pow.f64 y.re 5)) -3/8)) (/.f64 y.im (/.f64 y.re x.im)))) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (fma.f64 -1 (*.f64 (pow.f64 y.im 5) (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5))) (/.f64 y.im (/.f64 y.re x.im)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.im 5) (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.im (pow.f64 y.re 5))) (*.f64 -1/4 (/.f64 x.im (pow.f64 y.re 5)))) (pow.f64 y.re 2))) (*.f64 1/8 (/.f64 x.im (pow.f64 y.re 7)))) (pow.f64 y.im 7))) (/.f64 (*.f64 y.im x.im) y.re)))) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (fma.f64 -1 (*.f64 (pow.f64 y.im 5) (*.f64 (/.f64 x.im (pow.f64 y.re 5)) -3/8)) (fma.f64 -1 (*.f64 (pow.f64 y.im 7) (fma.f64 -1/2 (/.f64 (*.f64 (/.f64 x.im (pow.f64 y.re 5)) -3/8) (*.f64 y.re y.re)) (/.f64 (*.f64 1/8 x.im) (pow.f64 y.re 7)))) (/.f64 y.im (/.f64 y.re x.im))))) |
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (fma.f64 -1 (*.f64 (pow.f64 y.im 5) (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5))) (fma.f64 -1 (*.f64 (pow.f64 y.im 7) (fma.f64 -1/2 (/.f64 (/.f64 (*.f64 x.im -3/8) (pow.f64 y.re 5)) (*.f64 y.re y.re)) (/.f64 (*.f64 1/8 x.im) (pow.f64 y.re 7)))) (/.f64 y.im (/.f64 y.re x.im))))) |
x.im |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) x.im) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 4))) x.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (pow.f64 y.re 4) x.im) -3/8) (pow.f64 y.im 4)) x.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 4) (*.f64 x.im -3/8)) (pow.f64 y.im 4)) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 y.re 6) x.im)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)))) (pow.f64 y.im 6))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.im 4))) x.im))) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 (pow.f64 y.re 6) x.im) (*.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (*.f64 (pow.f64 y.re 4) x.im) -3/8)))) (pow.f64 y.im 6)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (pow.f64 y.re 4) x.im) -3/8) (pow.f64 y.im 4)) x.im))) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (fma.f64 -1 (/.f64 (fma.f64 1/8 (*.f64 (pow.f64 y.re 6) x.im) (*.f64 -1/2 (*.f64 (*.f64 (pow.f64 y.re 4) x.im) (*.f64 -3/8 (*.f64 y.re y.re))))) (pow.f64 y.im 6)) (fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 4) (*.f64 x.im -3/8)) (pow.f64 y.im 4)) x.im))) |
(*.f64 -1 x.im) |
(neg.f64 x.im) |
(+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))) |
(fma.f64 -1 x.im (*.f64 1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)))) |
(fma.f64 -1 x.im (/.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.im 1/2)) (*.f64 y.im y.im))) |
(+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))) |
(fma.f64 -1 x.im (fma.f64 -1/4 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (*.f64 1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)))))) |
(fma.f64 -1 x.im (fma.f64 -1/4 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (/.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.im 1/2)) (*.f64 y.im y.im))))) |
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 y.re 6) x.im) (pow.f64 y.im 6))) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 y.re 4) x.im) (pow.f64 y.im 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y.re 4) x.im)) (*.f64 -1/4 (*.f64 (pow.f64 y.re 4) x.im))) (pow.f64 y.re 2)) (pow.f64 y.im 6)))))))) |
(fma.f64 1/8 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 6) x.im)) (fma.f64 -1 x.im (fma.f64 -1/4 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (*.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 y.re 4) x.im) -3/8) (/.f64 (pow.f64 y.im 6) (*.f64 y.re y.re))))))))) |
(fma.f64 1/8 (/.f64 (pow.f64 y.re 6) (/.f64 (pow.f64 y.im 6) x.im)) (fma.f64 -1 x.im (fma.f64 -1/4 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (fma.f64 -1/8 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) x.im)) (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (/.f64 (*.f64 (*.f64 -1/2 (*.f64 (pow.f64 y.re 4) x.im)) -3/8) (/.f64 (pow.f64 y.im 6) (*.f64 y.re y.re)))))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2)))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (*.f64 (*.f64 y.re y.re) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) -1)))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) (*.f64 y.re (*.f64 y.re (/.f64 (neg.f64 x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.im 4))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 3)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2))))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 4)) -1) (pow.f64 y.re 3) (*.f64 (*.f64 y.re y.re) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) -1))))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 (/.f64 (neg.f64 x.re) (pow.f64 y.im 4)) (pow.f64 y.re 3) (*.f64 y.re (*.f64 y.re (/.f64 (neg.f64 x.im) (pow.f64 y.im 3))))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))) |
(+.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 (*.f64 -1/2 x.re) (*.f64 y.im y.im)) (pow.f64 y.re 3))) |
(+.f64 (/.f64 (*.f64 x.re (*.f64 (*.f64 y.im y.im) -1/2)) (pow.f64 y.re 3)) (fma.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) (pow.f64 y.re 3)) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)))) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))) |
(-.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))))) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))) |
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) (pow.f64 y.re 3)) (+.f64 (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re) (+.f64 (/.f64 x.re y.re) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 y.im (*.f64 y.im x.re)) (pow.f64 y.re 3)) (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))))) |
(+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (neg.f64 (/.f64 (*.f64 (*.f64 x.re (*.f64 y.im y.im)) 1) (pow.f64 y.re 3))))) |
(+.f64 (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (neg.f64 (/.f64 (*.f64 (*.f64 y.im y.im) (*.f64 x.re 1)) (pow.f64 y.re 3)))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))) |
(+.f64 (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (*.f64 y.im y.im)) 1) (pow.f64 y.re 3)) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))))) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))) |
(+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re) (-.f64 (fma.f64 -1 (/.f64 (*.f64 (*.f64 y.im y.im) (*.f64 x.re 1)) (pow.f64 y.re 3)) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))) (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) -1) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))) |
(fma.f64 (/.f64 (neg.f64 x.re) (pow.f64 y.re 3)) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re))) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.re 4)))) (pow.f64 y.im 3))))) |
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) -1) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (*.f64 (pow.f64 y.im 3) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) -1))))) |
(+.f64 (fma.f64 (/.f64 (neg.f64 x.re) (pow.f64 y.re 3)) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re))) (*.f64 (pow.f64 y.im 3) (/.f64 (neg.f64 x.im) (pow.f64 y.re 4)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (-.f64 (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) (*.f64 1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) (+.f64 (/.f64 (*.f64 (*.f64 (*.f64 -1/2 y.re) y.re) x.im) (pow.f64 y.im 3)) (/.f64 (*.f64 (*.f64 (*.f64 -1/2 y.re) y.re) x.im) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (-.f64 (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) (-.f64 (*.f64 -1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (/.f64 x.im y.im))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 y.re y.re) x.im) 1) (pow.f64 y.im 3)) (/.f64 x.im y.im))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.im 1)) (pow.f64 y.im 3)) (/.f64 x.im y.im))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (-.f64 (+.f64 (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 y.re y.re) x.im) 1) (pow.f64 y.im 3)) (/.f64 x.im y.im)) (*.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))) (/.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.re 3))) (pow.f64 y.im 4)))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 (*.f64 y.re y.re) (*.f64 x.im 1)) (pow.f64 y.im 3)) (/.f64 x.im y.im)) (-.f64 (/.f64 (*.f64 -1/2 x.re) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))) (/.f64 (*.f64 1/2 x.re) (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)) y.re)) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) 1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 y.re (*.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 y.re (*.f64 1 (/.f64 x.re (hypot.f64 y.re y.im)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 x.re (*.f64 y.re (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (*.f64 y.re x.re) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.re x.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 (*.f64 y.re x.re)) (*.f64 (sqrt.f64 (*.f64 y.re x.re)) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (*.f64 x.re y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (*.f64 x.re y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.re y.re)))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 (*.f64 y.re x.re) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 y.re (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) x.re))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 y.re (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2) (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (*.f64 (cbrt.f64 (*.f64 y.re x.re)) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 (*.f64 x.re y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (*.f64 x.re y.re)) (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2))) |
(*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 -1 (hypot.f64 y.re y.im))) |
(*.f64 (*.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (*.f64 x.re y.re) (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (pow.f64 (hypot.f64 y.re y.im) -1/2))) |
(*.f64 y.re (*.f64 (*.f64 x.re (pow.f64 (hypot.f64 y.re y.im) -1/2)) (pow.f64 (hypot.f64 y.re y.im) -1/2))) |
(*.f64 (*.f64 (*.f64 y.re x.re) (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2))) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 x.re y.re) (*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y.re y.im) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (*.f64 y.re x.re) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (*.f64 y.re x.re) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 y.re (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) x.re))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 y.re (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (*.f64 x.re y.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (*.f64 y.re x.re) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 1 (/.f64 y.re (/.f64 (cbrt.f64 (hypot.f64 y.re y.im)) x.re))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(/.f64 (/.f64 (*.f64 1 (*.f64 x.re y.re)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) y.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 y.re (neg.f64 x.re))) |
(*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 -1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (*.f64 y.re x.re) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(*.f64 (neg.f64 x.re) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 y.re (neg.f64 x.re)) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (*.f64 1 (/.f64 x.re (hypot.f64 y.re y.im))) y.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 y.re 1) (/.f64 x.re (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 x.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re 1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 x.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) 1) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (*.f64 x.re y.re)) (/.f64 (sqrt.f64 (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im)) (sqrt.f64 (*.f64 y.re x.re))) |
(*.f64 (sqrt.f64 (*.f64 x.re y.re)) (/.f64 (sqrt.f64 (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 x.re y.re)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (*.f64 x.re y.re)) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (/.f64 (cbrt.f64 (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (*.f64 y.re x.re)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 x.re)) |
(*.f64 (neg.f64 x.re) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 y.re (neg.f64 x.re)) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.re (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 x.re))) (sqrt.f64 x.re)) |
(*.f64 (sqrt.f64 x.re) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (sqrt.f64 x.re))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 x.re) (sqrt.f64 x.re))) |
(*.f64 (/.f64 y.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 x.re) 2))) (cbrt.f64 x.re)) |
(*.f64 (cbrt.f64 x.re) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 x.re) 2))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 (pow.f64 (cbrt.f64 x.re) 2) (cbrt.f64 x.re))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) y.re)) x.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (*.f64 y.re x.re)))) (sqrt.f64 (*.f64 y.re x.re))) |
(*.f64 (sqrt.f64 (*.f64 x.re y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 (*.f64 x.re y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 (*.f64 x.re y.re)) (sqrt.f64 (*.f64 x.re y.re)))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2))) (cbrt.f64 (*.f64 y.re x.re))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 (*.f64 x.re y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (*.f64 x.re y.re)) (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2))) |
(*.f64 (/.f64 (sqrt.f64 y.re) (/.f64 (hypot.f64 y.re y.im) x.re)) (sqrt.f64 y.re)) |
(*.f64 (sqrt.f64 y.re) (/.f64 (sqrt.f64 y.re) (/.f64 (hypot.f64 y.re y.im) x.re))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.re) 2) (/.f64 (hypot.f64 y.re y.im) x.re)) (cbrt.f64 y.re)) |
(*.f64 (cbrt.f64 y.re) (/.f64 (pow.f64 (cbrt.f64 y.re) 2) (/.f64 (hypot.f64 y.re y.im) x.re))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.re x.re)) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (*.f64 y.re x.re))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.re y.re)) 2) (/.f64 (cbrt.f64 (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 y.re (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) x.re))) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (*.f64 y.re (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 (*.f64 x.re y.re) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (*.f64 (*.f64 x.re y.re) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 (/.f64 (*.f64 y.re x.re) 1) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(*.f64 (neg.f64 x.re) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 y.re (neg.f64 x.re)) (neg.f64 (hypot.f64 y.re y.im))) |
(pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 2) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(pow.f64 (cbrt.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) -1) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re))) |
(pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) 1/3) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(neg.f64 (/.f64 (*.f64 y.re x.re) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (neg.f64 x.re) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 y.re (neg.f64 x.re)) (neg.f64 (hypot.f64 y.re y.im))) |
(sqrt.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) |
(sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(expm1.f64 (log1p.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 1)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) 1) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 1) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 1 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im y.im)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im 1) y.im)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 x.im) (*.f64 (sqrt.f64 x.im) (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 (sqrt.f64 x.im) (sqrt.f64 x.im)) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (*.f64 (sqrt.f64 x.im) (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 (cbrt.f64 x.im) (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 y.im (/.f64 (cbrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 x.im) (*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 x.im) 2))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2) (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) x.im) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (neg.f64 x.im) (*.f64 -1 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (sqrt.f64 y.im)) (sqrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.im) (sqrt.f64 y.im))) |
(/.f64 (*.f64 (sqrt.f64 y.im) x.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) |
(*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (cbrt.f64 y.im))) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 x.im (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 x.im (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) x.im) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (/.f64 x.im (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 x.im (neg.f64 y.im))) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (*.f64 -1 (/.f64 y.im (hypot.f64 y.re y.im))) (neg.f64 x.im)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (sqrt.f64 x.im) 1) y.im)) |
(*.f64 (*.f64 (sqrt.f64 x.im) (sqrt.f64 x.im)) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (*.f64 (sqrt.f64 x.im) (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (sqrt.f64 x.im) 1) (*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) y.im)) |
(*.f64 (*.f64 (sqrt.f64 x.im) (sqrt.f64 x.im)) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (*.f64 (sqrt.f64 x.im) (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)) y.im) (sqrt.f64 x.im)) |
(*.f64 (*.f64 (sqrt.f64 x.im) (sqrt.f64 x.im)) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (*.f64 (sqrt.f64 x.im) (/.f64 (sqrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (cbrt.f64 x.im) 1) y.im)) |
(*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 y.im (/.f64 (cbrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 x.im) (*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 x.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) 1) (*.f64 (/.f64 (cbrt.f64 x.im) (hypot.f64 y.re y.im)) y.im)) |
(*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 y.im (/.f64 (cbrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 x.im) (*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 x.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (/.f64 (cbrt.f64 x.im) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (cbrt.f64 x.im)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2))) |
(*.f64 (cbrt.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2))) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 1) y.im) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 1) (/.f64 y.im 1)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) -1) (neg.f64 y.im)) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 x.im -1) (neg.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 x.im (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 (neg.f64 y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.im) (sqrt.f64 y.im))) |
(/.f64 (*.f64 (sqrt.f64 y.im) x.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (cbrt.f64 y.im))) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 x.im) y.im))) (sqrt.f64 x.im)) |
(*.f64 (sqrt.f64 x.im) (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im (sqrt.f64 x.im))))) |
(/.f64 (*.f64 1 (sqrt.f64 x.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im (sqrt.f64 x.im)))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (pow.f64 (cbrt.f64 x.im) 2) y.im))) (cbrt.f64 x.im)) |
(*.f64 (cbrt.f64 x.im) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.im (pow.f64 (cbrt.f64 x.im) 2)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 y.im (cbrt.f64 x.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (/.f64 (hypot.f64 y.re y.im) y.im)) (cbrt.f64 x.im)) |
(*.f64 (pow.f64 (cbrt.f64 x.im) 2) (*.f64 y.im (/.f64 (cbrt.f64 x.im) (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 x.im) (*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 x.im) 2))) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.im) (sqrt.f64 y.im))) |
(/.f64 (*.f64 (sqrt.f64 y.im) x.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (cbrt.f64 y.im))) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (neg.f64 x.im) -1) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 (neg.f64 x.im) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 y.im)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (*.f64 x.im y.im) 1) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (*.f64 x.im y.im) (sqrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (hypot.f64 y.re y.im) -1/2)) |
(*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) (/.f64 x.im (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) y.im))) |
(/.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) -1/2) x.im) (/.f64 (sqrt.f64 (hypot.f64 y.re y.im)) y.im)) |
(*.f64 (/.f64 (*.f64 x.im y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 y.re y.im))) (/.f64 x.im (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) y.im))) |
(/.f64 (/.f64 (*.f64 y.im (*.f64 x.im 1)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (*.f64 x.im y.im) (neg.f64 (hypot.f64 y.re y.im))) -1) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im 1) 1) (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.im 1) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 x.im (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.im (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.im 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 x.im (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 (/.f64 x.im 1) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im 1) -1) (neg.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 (/.f64 x.im 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.im) (sqrt.f64 y.im))) |
(/.f64 (*.f64 (sqrt.f64 y.im) x.im) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 (/.f64 x.im 1) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.im) 2))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (cbrt.f64 y.im))) |
(*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (/.f64 x.im 1) (neg.f64 (neg.f64 (hypot.f64 y.re y.im)))) (neg.f64 (neg.f64 y.im))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) 1) (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) x.im) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) |
(*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 y.im)) |
(*.f64 (sqrt.f64 y.im) (/.f64 x.im (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))))) |
(*.f64 (sqrt.f64 y.im) (/.f64 (/.f64 x.im (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(*.f64 (/.f64 (/.f64 x.im (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 y.im))) |
(*.f64 (/.f64 x.im (*.f64 (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)))) (sqrt.f64 (neg.f64 y.im))) |
(*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) 1) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) x.im) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) |
(*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 y.im)) |
(*.f64 (cbrt.f64 y.im) (/.f64 x.im (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)))) |
(*.f64 (cbrt.f64 y.im) (/.f64 (/.f64 x.im (cbrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2))) |
(*.f64 (/.f64 (/.f64 x.im (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (neg.f64 y.im))) |
(*.f64 (/.f64 x.im (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.im)) 2))) (cbrt.f64 (neg.f64 y.im))) |
(pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 1) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(pow.f64 (sqrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(pow.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 3) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) -1) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im))) |
(pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) 1/3) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(neg.f64 (*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) y.im)) |
(*.f64 (/.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) |
(sqrt.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2)) |
(log.f64 (exp.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(cbrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(expm1.f64 (log1p.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(exp.f64 (log.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(exp.f64 (*.f64 (log.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 1)) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(log1p.f64 (expm1.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) |
(*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(+.f64 (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))) |
(+.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) |
(+.f64 (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) 1) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(/.f64 (*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im)) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im)))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (sqrt.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2))) (/.f64 (*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))))))) |
(/.f64 (/.f64 (sqrt.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im))))) |
(/.f64 (sqrt.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) |
(/.f64 (sqrt.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im)))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) |
(/.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im)))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) -1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (neg.f64 (hypot.f64 y.re y.im))) |
(neg.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 -1 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (neg.f64 (hypot.f64 y.re y.im))) |
(neg.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im)))) |
(/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (*.f64 (/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) y.im) (pow.f64 (hypot.f64 y.re y.im) 2)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (*.f64 (hypot.f64 y.re y.im) x.im)) (*.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (-.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im)))) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) (-.f64 (*.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im (*.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) (-.f64 (*.f64 x.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 6) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 6)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))))) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 6) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 6)) (*.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im))) (*.f64 (hypot.f64 y.re y.im) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3))))) |
(/.f64 (-.f64 (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) (*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))) (-.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(/.f64 (-.f64 (*.f64 (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im)) (*.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)))) (-.f64 (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 4) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 4)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 4) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 4)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))))) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 y.re y.im) x.im) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (+.f64 (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (*.f64 (hypot.f64 y.re y.im) x.im)) (-.f64 (*.f64 (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (*.f64 (*.f64 (hypot.f64 y.re y.im) x.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im)) 3)) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) (+.f64 (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im)) (-.f64 (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im)) (*.f64 x.im (hypot.f64 y.re y.im))))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.im (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) (+.f64 (*.f64 x.im (*.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im))) (-.f64 (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.im (hypot.f64 y.re y.im))))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))) (+.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) 3)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 6) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 6) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3))))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3) 3) (pow.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) 3)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im))) (+.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 6) (*.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (-.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3))))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) 3) (pow.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) 3)) (+.f64 (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) (-.f64 (*.f64 (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) 3) (pow.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) 3)) (fma.f64 (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im) (*.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) (-.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) (*.f64 (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2)) y.im))))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (+.f64 (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2)) (+.f64 (*.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)))))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) 3)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 4) (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 4) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2))))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 6) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 6)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 4) (+.f64 (*.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2)) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 4)))) |
(/.f64 (+.f64 (*.f64 y.re (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) x.re)) |
(/.f64 (+.f64 (*.f64 y.re (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (/.f64 (hypot.f64 y.re y.im) x.re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)) (/.f64 (hypot.f64 y.re y.im) x.re))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (/.f64 (hypot.f64 y.re y.im) x.re)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (*.f64 y.im x.im)) x.re)) |
(/.f64 (+.f64 (*.f64 y.re (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (/.f64 (fma.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (*.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im))) |
(/.f64 (fma.f64 y.re (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (neg.f64 (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re)))) (/.f64 (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) x.re)) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (*.f64 y.re x.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (hypot.f64 y.re y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (*.f64 x.re y.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)))) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 x.re (/.f64 (/.f64 (*.f64 y.re (hypot.f64 y.re y.im)) y.im) x.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (*.f64 y.im x.im))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (hypot.f64 y.re y.im) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (hypot.f64 y.re y.im) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (fma.f64 (*.f64 x.re y.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 x.im (neg.f64 (hypot.f64 y.re y.im)))) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im))) |
(/.f64 (fma.f64 x.im (neg.f64 (hypot.f64 y.re y.im)) (*.f64 y.re (/.f64 (*.f64 (neg.f64 x.re) (hypot.f64 y.re y.im)) y.im))) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) (*.f64 x.re y.re))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)) (*.f64 x.re y.re)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (*.f64 y.im x.im)) (*.f64 x.re y.re))) |
(/.f64 (+.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (fma.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)))) |
(/.f64 (fma.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (/.f64 (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) (*.f64 x.re y.re))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) x.im)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (fma.f64 (*.f64 x.re y.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 x.im (neg.f64 (hypot.f64 y.re y.im)))) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im))) |
(/.f64 (fma.f64 x.im (neg.f64 (hypot.f64 y.re y.im)) (*.f64 y.re (/.f64 (*.f64 (neg.f64 x.re) (hypot.f64 y.re y.im)) y.im))) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im))))) |
(/.f64 (fma.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im))))) |
(/.f64 (fma.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (neg.f64 (hypot.f64 y.re y.im))) (/.f64 (*.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 3)) (*.f64 y.im x.im))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (neg.f64 x.im))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (+.f64 (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) y.re) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (/.f64 (hypot.f64 y.re y.im) x.re)))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) x.re)) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (hypot.f64 y.re y.im) y.im)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im) (*.f64 x.re y.re))) |
(/.f64 (+.f64 (*.f64 x.im (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) y.im) (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (fma.f64 (*.f64 x.re y.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 x.im (neg.f64 (hypot.f64 y.re y.im)))) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im))) |
(/.f64 (fma.f64 x.im (neg.f64 (hypot.f64 y.re y.im)) (*.f64 y.re (/.f64 (*.f64 (neg.f64 x.re) (hypot.f64 y.re y.im)) y.im))) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) y.re)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (/.f64 (hypot.f64 y.re y.im) x.re)))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (/.f64 (hypot.f64 y.re y.im) x.re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)) (/.f64 (hypot.f64 y.re y.im) x.re))) |
(/.f64 (fma.f64 y.re (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (/.f64 (hypot.f64 y.re y.im) x.re)) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (*.f64 y.im x.im)) x.re)) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 y.re x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 (*.f64 x.re y.re) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)))) |
(/.f64 (+.f64 (hypot.f64 y.re y.im) (*.f64 x.re (/.f64 (/.f64 (*.f64 y.re (hypot.f64 y.re y.im)) y.im) x.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (*.f64 y.im x.im))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im))) (*.f64 (hypot.f64 y.re y.im) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im)) (*.f64 x.re y.re)))) |
(/.f64 (+.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im))) (/.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) (*.f64 y.im x.im)) (*.f64 x.re y.re))) |
(/.f64 (+.f64 (neg.f64 (hypot.f64 y.re y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.im y.im)) (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (fma.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (*.f64 y.im x.im))))) |
(/.f64 (fma.f64 (*.f64 y.re (neg.f64 x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.im x.im)) (neg.f64 (hypot.f64 y.re y.im))) (/.f64 (*.f64 -1 (pow.f64 (hypot.f64 y.re y.im) 3)) (*.f64 y.im x.im))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) x.re)) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) y.re)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (/.f64 (hypot.f64 y.re y.im) x.re)))) |
(/.f64 (/.f64 (fma.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (*.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) y.im)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (hypot.f64 y.re y.im) x.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im))) |
(/.f64 (fma.f64 y.re (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (neg.f64 (*.f64 x.im (/.f64 (hypot.f64 y.re y.im) x.re)))) (/.f64 (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) x.re)) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 y.re x.re))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 (*.f64 x.re y.re) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 x.im (neg.f64 (hypot.f64 y.re y.im)))) (*.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im))) |
(/.f64 (fma.f64 x.im (neg.f64 (hypot.f64 y.re y.im)) (*.f64 y.re (/.f64 (*.f64 (neg.f64 x.re) (hypot.f64 y.re y.im)) y.im))) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re x.re))))) |
(/.f64 (fma.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (*.f64 (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)))) |
(/.f64 (fma.f64 (neg.f64 x.im) (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im)) (/.f64 (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) (*.f64 x.re y.re))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (neg.f64 (hypot.f64 y.re y.im))) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (*.f64 y.re (neg.f64 x.re)))) (*.f64 (hypot.f64 y.re y.im) (*.f64 (/.f64 (neg.f64 (hypot.f64 y.re y.im)) y.im) (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (*.f64 -1 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im)))) |
(/.f64 (*.f64 -1 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) 1) (*.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) -1) (*.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) 1) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))) (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3)) -1) (*.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re)))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im)))) |
(/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) 1) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (*.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im)))) -1) (*.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (neg.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (*.f64 (/.f64 x.im (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)) (*.f64 y.re x.re))))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (*.f64 (hypot.f64 y.re y.im) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 2) (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2) (/.f64 (*.f64 x.im (*.f64 x.re y.re)) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (hypot.f64 y.re y.im)) (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2) (-.f64 (pow.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) 2) (*.f64 (*.f64 (*.f64 x.re y.re) (/.f64 x.im (pow.f64 (hypot.f64 y.re y.im) 2))) y.im)))) |
(/.f64 (neg.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 y.re x.re) (/.f64 y.im (hypot.f64 y.re y.im))))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) y.im)))) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (*.f64 (/.f64 x.re (/.f64 y.im y.re)) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (fma.f64 x.im (hypot.f64 y.re y.im) (/.f64 (*.f64 x.re y.re) (/.f64 y.im (hypot.f64 y.re y.im)))) (/.f64 (pow.f64 (hypot.f64 y.re y.im) 3) y.im)) |
(/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (neg.f64 (hypot.f64 y.re y.im))) |
(neg.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 1) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 3) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 3) 1/3) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) 3)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3))) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3))) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) 3))) |
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3))) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) 3))) |
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))) 1)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(fma.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(fma.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))) |
(+.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) (/.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.re x.re) (pow.f64 (hypot.f64 y.re y.im) 2))) |
(fma.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re))) |
(+.f64 (/.f64 y.re (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) x.re)) (/.f64 (*.f64 y.im (/.f64 x.im (hypot.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
Compiled 9 to 5 computations (44.4% saved)
Found 1 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 61.4% | (/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
Compiled 19 to 7 computations (63.2% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x.im | @ | -inf | (/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
| 0.0ms | x.im | @ | 0 | (/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
| 0.0ms | y.im | @ | -inf | (/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
| 0.0ms | x.im | @ | inf | (/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
| 0.0ms | y.im | @ | 0 | (/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
| 1× | batch-egg-rewrite |
| 1730× | add-sqr-sqrt |
| 1716× | *-un-lft-identity |
| 1608× | add-cube-cbrt |
| 1580× | add-cbrt-cube |
| 158× | times-frac |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 19 |
| 1 | 151 | 7 |
| 2 | 2312 | 7 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (*.f64 x.im (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (/.f64 1 (/.f64 y.im (/.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.im (*.f64 y.im (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.im (/.f64 1 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im x.im) (pow.f64 y.im -2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im y.im) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 x.im y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 x.im y.im)) (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im 1) (/.f64 1 y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im 1) (/.f64 y.im (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 y.im -2) (*.f64 y.im x.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (*.f64 y.im (neg.f64 y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im 1) (/.f64 x.im (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.im) (/.f64 x.im 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 (cbrt.f64 y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (*.f64 y.im y.im)) x.im) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (sqrt.f64 y.im)) (/.f64 x.im (sqrt.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 x.im (cbrt.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.im) (sqrt.f64 y.im)) (/.f64 (sqrt.f64 x.im) (sqrt.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) 1) (/.f64 (cbrt.f64 x.im) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (sqrt.f64 y.im)) (/.f64 (cbrt.f64 x.im) (sqrt.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (cbrt.f64 x.im) (cbrt.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 x.im (pow.f64 (cbrt.f64 y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 y.im (pow.f64 (cbrt.f64 y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 y.im) 2))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) y.im) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.im)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (cbrt.f64 (pow.f64 y.im 4))) (cbrt.f64 (/.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 x.im y.im) 1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 x.im y.im)) 2) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 3) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 1/3) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 y.im x.im) -1) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.im (neg.f64 y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 x.im y.im) 2)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 x.im y.im) 3)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (-.f64 (log.f64 x.im) (log.f64 y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 x.im y.im)) 1)) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1676× | associate-+r+ |
| 1432× | associate-/l* |
| 1270× | times-frac |
| 988× | associate-/r* |
| 600× | unswap-sqr |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 141 | 857 |
| 1 | 359 | 797 |
| 2 | 1449 | 779 |
| 3 | 6587 | 779 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) 1) |
(*.f64 y.im (*.f64 x.im (pow.f64 y.im -2))) |
(*.f64 y.im (/.f64 1 (/.f64 y.im (/.f64 x.im y.im)))) |
(*.f64 x.im (*.f64 y.im (pow.f64 y.im -2))) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 (*.f64 y.im x.im) (pow.f64 y.im -2)) |
(*.f64 (/.f64 x.im y.im) 1) |
(*.f64 1 (/.f64 x.im y.im)) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 y.im -2))) |
(*.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 y.im -2))) |
(*.f64 (cbrt.f64 (/.f64 x.im y.im)) (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im))) |
(*.f64 (/.f64 x.im 1) (/.f64 1 y.im)) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (*.f64 y.im y.im))) |
(*.f64 (pow.f64 y.im -2) (*.f64 y.im x.im)) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (*.f64 y.im (neg.f64 y.im)))) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 y.im) (/.f64 x.im 1)) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 y.im (*.f64 y.im y.im)) x.im) |
(*.f64 (/.f64 1 (sqrt.f64 y.im)) (/.f64 x.im (sqrt.f64 y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 x.im (cbrt.f64 y.im))) |
(*.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) y.im)) |
(*.f64 (/.f64 (sqrt.f64 x.im) (sqrt.f64 y.im)) (/.f64 (sqrt.f64 x.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) 1) (/.f64 (cbrt.f64 x.im) y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (sqrt.f64 y.im)) (/.f64 (cbrt.f64 x.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (cbrt.f64 x.im) (cbrt.f64 y.im))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (*.f64 y.im y.im))) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 x.im (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 y.im (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) y.im) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (cbrt.f64 (pow.f64 y.im 4))) (cbrt.f64 (/.f64 x.im y.im))) |
(pow.f64 (/.f64 x.im y.im) 1) |
(pow.f64 (sqrt.f64 (/.f64 x.im y.im)) 2) |
(pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 3) |
(pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 1/3) |
(pow.f64 (/.f64 y.im x.im) -1) |
(neg.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.im (neg.f64 y.im)))) |
(sqrt.f64 (pow.f64 (/.f64 x.im y.im) 2)) |
(log.f64 (exp.f64 (/.f64 x.im y.im))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))) |
(cbrt.f64 (pow.f64 (/.f64 x.im y.im) 3)) |
(expm1.f64 (log1p.f64 (/.f64 x.im y.im))) |
(exp.f64 (log.f64 (/.f64 x.im y.im))) |
(exp.f64 (-.f64 (log.f64 x.im) (log.f64 y.im))) |
(exp.f64 (*.f64 (log.f64 (/.f64 x.im y.im)) 1)) |
(log1p.f64 (expm1.f64 (/.f64 x.im y.im))) |
| Outputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(/.f64 x.im y.im) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) 1) |
(/.f64 x.im y.im) |
(*.f64 y.im (*.f64 x.im (pow.f64 y.im -2))) |
(/.f64 x.im y.im) |
(*.f64 y.im (/.f64 1 (/.f64 y.im (/.f64 x.im y.im)))) |
(/.f64 x.im y.im) |
(*.f64 x.im (*.f64 y.im (pow.f64 y.im -2))) |
(/.f64 x.im y.im) |
(*.f64 x.im (/.f64 1 y.im)) |
(/.f64 x.im y.im) |
(*.f64 (*.f64 y.im x.im) (pow.f64 y.im -2)) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 x.im y.im) 1) |
(/.f64 x.im y.im) |
(*.f64 1 (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 y.im -2))) |
(/.f64 x.im y.im) |
(*.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (pow.f64 y.im -2))) |
(/.f64 x.im y.im) |
(*.f64 (cbrt.f64 (/.f64 x.im y.im)) (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2)) |
(/.f64 x.im y.im) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 x.im 1) (/.f64 1 y.im)) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im (*.f64 y.im y.im))) |
(/.f64 x.im y.im) |
(*.f64 (pow.f64 y.im -2) (*.f64 y.im x.im)) |
(/.f64 x.im y.im) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im (*.f64 y.im y.im))) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 1 y.im) (/.f64 x.im 1)) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (*.f64 y.im x.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (*.f64 x.im y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 x.im (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 y.im (*.f64 y.im y.im)) x.im) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 1 (sqrt.f64 y.im)) (/.f64 x.im (sqrt.f64 y.im))) |
(/.f64 (/.f64 x.im (sqrt.f64 y.im)) (sqrt.f64 y.im)) |
(/.f64 x.im (*.f64 (sqrt.f64 y.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 x.im (cbrt.f64 y.im))) |
(/.f64 (/.f64 x.im (cbrt.f64 y.im)) (pow.f64 (cbrt.f64 y.im) 2)) |
(pow.f64 (/.f64 (cbrt.f64 x.im) (cbrt.f64 y.im)) 3) |
(*.f64 (/.f64 (sqrt.f64 x.im) 1) (/.f64 (sqrt.f64 x.im) y.im)) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 (sqrt.f64 x.im) (sqrt.f64 y.im)) (/.f64 (sqrt.f64 x.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 1 (sqrt.f64 y.im)) (/.f64 x.im (sqrt.f64 y.im))) |
(/.f64 (/.f64 x.im (sqrt.f64 y.im)) (sqrt.f64 y.im)) |
(/.f64 x.im (*.f64 (sqrt.f64 y.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 (sqrt.f64 x.im) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (sqrt.f64 x.im) (cbrt.f64 y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 x.im (cbrt.f64 y.im))) |
(/.f64 (/.f64 x.im (cbrt.f64 y.im)) (pow.f64 (cbrt.f64 y.im) 2)) |
(pow.f64 (/.f64 (cbrt.f64 x.im) (cbrt.f64 y.im)) 3) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) 1) (/.f64 (cbrt.f64 x.im) y.im)) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (sqrt.f64 y.im)) (/.f64 (cbrt.f64 x.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 1 (sqrt.f64 y.im)) (/.f64 x.im (sqrt.f64 y.im))) |
(/.f64 (/.f64 x.im (sqrt.f64 y.im)) (sqrt.f64 y.im)) |
(/.f64 x.im (*.f64 (sqrt.f64 y.im) (sqrt.f64 y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.im) 2) (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 (cbrt.f64 x.im) (cbrt.f64 y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y.im) 2)) (/.f64 x.im (cbrt.f64 y.im))) |
(/.f64 (/.f64 x.im (cbrt.f64 y.im)) (pow.f64 (cbrt.f64 y.im) 2)) |
(pow.f64 (/.f64 (cbrt.f64 x.im) (cbrt.f64 y.im)) 3) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 y.im y.im))) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (*.f64 y.im y.im))) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 x.im (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (*.f64 x.im y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 x.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 y.im (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (*.f64 x.im y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 x.im (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (*.f64 x.im y.im) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 y.im (cbrt.f64 (pow.f64 y.im 4))) (/.f64 x.im (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) y.im) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.im)) |
(/.f64 x.im y.im) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y.im x.im)) 2) (cbrt.f64 (pow.f64 y.im 4))) (cbrt.f64 (/.f64 x.im y.im))) |
(*.f64 (cbrt.f64 (/.f64 x.im y.im)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.im)) 2) (cbrt.f64 (pow.f64 y.im 4)))) |
(/.f64 (pow.f64 (cbrt.f64 (*.f64 x.im y.im)) 2) (/.f64 (cbrt.f64 (pow.f64 y.im 4)) (cbrt.f64 (/.f64 x.im y.im)))) |
(pow.f64 (/.f64 x.im y.im) 1) |
(/.f64 x.im y.im) |
(pow.f64 (sqrt.f64 (/.f64 x.im y.im)) 2) |
(/.f64 x.im y.im) |
(pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 3) |
(/.f64 x.im y.im) |
(pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 1/3) |
(/.f64 x.im y.im) |
(pow.f64 (/.f64 y.im x.im) -1) |
(/.f64 x.im y.im) |
(neg.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.im (neg.f64 y.im)))) |
(/.f64 x.im y.im) |
(sqrt.f64 (pow.f64 (/.f64 x.im y.im) 2)) |
(/.f64 x.im y.im) |
(log.f64 (exp.f64 (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 x.im y.im)))) |
(/.f64 x.im y.im) |
(cbrt.f64 (pow.f64 (/.f64 x.im y.im) 3)) |
(/.f64 x.im y.im) |
(expm1.f64 (log1p.f64 (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
(exp.f64 (log.f64 (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
(exp.f64 (-.f64 (log.f64 x.im) (log.f64 y.im))) |
(/.f64 x.im y.im) |
(exp.f64 (*.f64 (log.f64 (/.f64 x.im y.im)) 1)) |
(/.f64 x.im y.im) |
(log1p.f64 (expm1.f64 (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| 99.3% | (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) | |
| ✓ | 73.9% | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
Compiled 35 to 9 computations (74.3% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | x.im | @ | -inf | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| 0.0ms | x.re | @ | 0 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| 0.0ms | x.re | @ | inf | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| 0.0ms | x.re | @ | -inf | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| 0.0ms | x.im | @ | 0 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| 1× | batch-egg-rewrite |
| 1602× | associate-*r/ |
| 1378× | associate-*l/ |
| 1116× | associate-/r* |
| 976× | associate-/l* |
| 252× | add-sqr-sqrt |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 27 |
| 1 | 237 | 27 |
| 2 | 3362 | 27 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 2)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 2) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 y.im -2) (fma.f64 x.re y.re (*.f64 x.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 y.im y.im))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 y.im) 2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) y.im) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (pow.f64 y.im 4))) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) 2) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 3) 1/3) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (*.f64 y.im y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 y.im (neg.f64 y.im)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (/.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2) (pow.f64 y.im 4))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 3)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 1)) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) #(struct:egraph-query ((/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1822× | associate-+r+ |
| 1528× | associate-+l+ |
| 686× | associate-*r/ |
| 552× | unswap-sqr |
| 478× | associate-*l/ |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 99 | 2275 |
| 1 | 247 | 2263 |
| 2 | 891 | 2113 |
| 3 | 4572 | 2113 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 1) |
(*.f64 1 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) |
(*.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 2) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im)) |
(*.f64 (pow.f64 y.im -2) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im)) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) y.im) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (pow.f64 y.im 4))) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 1) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) 2) |
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 3) |
(pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 3) 1/3) |
(pow.f64 (/.f64 (*.f64 y.im y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 y.im (neg.f64 y.im)))) |
(sqrt.f64 (/.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2) (pow.f64 y.im 4))) |
(log.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))))) |
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 3)) |
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(exp.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 1)) |
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
| Outputs |
|---|
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 1 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 2)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 2) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (*.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im) (/.f64 1 y.im)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (pow.f64 y.im -2) (fma.f64 x.re y.re (*.f64 x.im y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (/.f64 -1 (*.f64 y.im y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 1 y.im) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) y.im)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 (pow.f64 y.im 4))) |
(/.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (cbrt.f64 (pow.f64 y.im 4)))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 1) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 y.im y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (*.f64 y.im y.im))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 (cbrt.f64 y.im) 2))) |
(*.f64 (/.f64 1 (cbrt.f64 (pow.f64 y.im 4))) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(/.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (cbrt.f64 y.im) 2)) (cbrt.f64 (pow.f64 y.im 4))) |
(/.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (cbrt.f64 (pow.f64 y.im 4)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) y.im) (/.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (pow.f64 y.im 4))) (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(*.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) 2) (cbrt.f64 (pow.f64 y.im 4)))) |
(*.f64 (cbrt.f64 (*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2))) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im y.im (*.f64 x.re y.re))) 2) (cbrt.f64 (pow.f64 y.im 4)))) |
(pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) y.im) 2) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(pow.f64 (cbrt.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 3) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(pow.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 3) 1/3) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(pow.f64 (/.f64 (*.f64 y.im y.im) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(neg.f64 (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (*.f64 y.im (neg.f64 y.im)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(sqrt.f64 (/.f64 (pow.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) 2) (pow.f64 y.im 4))) |
(fabs.f64 (*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2))) |
(log.f64 (pow.f64 (exp.f64 (fma.f64 x.re y.re (*.f64 x.im y.im))) (pow.f64 y.im -2))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(cbrt.f64 (pow.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) 3)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(expm1.f64 (log1p.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(exp.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2))) 1)) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
(log1p.f64 (expm1.f64 (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (fma.f64 x.im y.im (*.f64 x.re y.re)) (pow.f64 y.im -2)) |
Found 3 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| 100.0% | (/.f64 1 (hypot.f64 y.re y.im)) | |
| ✓ | 92.8% | (/.f64 (*.f64 y.im x.im) y.re) |
| ✓ | 91.6% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
Compiled 45 to 14 computations (68.9% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x.re | @ | 0 | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
| 1.0ms | x.im | @ | inf | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
| 1.0ms | x.im | @ | -inf | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
| 1.0ms | x.im | @ | 0 | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
| 0.0ms | x.re | @ | -inf | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
| 1× | batch-egg-rewrite |
| 738× | distribute-rgt-in |
| 696× | distribute-lft-in |
| 522× | associate-/r/ |
| 466× | distribute-lft-neg-in |
| 434× | distribute-rgt-neg-in |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 44 |
| 1 | 282 | 44 |
| 2 | 4029 | 44 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(/.f64 (*.f64 y.im x.im) y.re) |
| Outputs |
|---|
(((+.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (hypot.f64 y.re y.im) (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) (sqrt.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) (sqrt.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 x.re 3)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) (-.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (*.f64 x.re x.re) (*.f64 x.re x.re)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (+.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (pow.f64 x.re 3) 3) (pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) (+.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 x.re 3)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (-.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (pow.f64 x.re 3)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) 3)) (+.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.re x.re) 3) (pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (+.f64 (*.f64 (*.f64 x.re x.re) (*.f64 x.re x.re)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (+.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) 1) (*.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) -1) (*.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) 1) (*.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) -1) (*.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (neg.f64 x.re) (/.f64 x.im (/.f64 y.re y.im))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 2) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 3) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 3)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (/.f64 (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (/.f64 x.im (/.f64 y.re y.im)))) 1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 x.im (/.f64 y.re y.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (*.f64 x.im (/.f64 1 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (*.f64 1 (/.f64 x.im y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.im (*.f64 y.im (/.f64 1 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im x.im) (/.f64 1 y.re)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (/.f64 y.re y.im)) 1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im))) (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.re) (*.f64 y.im x.im)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (neg.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (*.f64 y.im x.im) (cbrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im y.re) y.im) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (sqrt.f64 y.re)) (/.f64 y.im (sqrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im y.re) x.im) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 1 (/.f64 x.im y.re)) y.im) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (neg.f64 y.re)) (*.f64 y.im (neg.f64 x.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im 1) (/.f64 x.im y.re)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (sqrt.f64 y.re)) (/.f64 x.im (sqrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 x.im (cbrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im 1) (/.f64 y.im y.re)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 y.im (cbrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re) (sqrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.re)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (sqrt.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (cbrt.f64 (*.f64 y.re y.re))) (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 y.re y.im)) x.im) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 y.re (sqrt.f64 (*.f64 y.im x.im)))) (sqrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 y.re (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)))) (cbrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (neg.f64 y.re)) (neg.f64 x.im)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (/.f64 y.re 1)) x.im) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (/.f64 y.re (sqrt.f64 x.im))) (sqrt.f64 x.im)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (/.f64 y.re (pow.f64 (cbrt.f64 x.im) 2))) (cbrt.f64 x.im)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)) (sqrt.f64 y.im)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 y.re x.im)) (cbrt.f64 y.im)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) y.re) (cbrt.f64 (*.f64 y.im x.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 3) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 y.re (*.f64 y.im x.im)) -1) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 y.im y.re) (neg.f64 x.im))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re)) 1)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 x.im (/.f64 y.re y.im))))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 x.im (/.f64 y.re y.im))) 1)) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 x.im (/.f64 y.re y.im)))) #(struct:egraph-query ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) (/.f64 (*.f64 y.im x.im) y.re)) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 662× | distribute-lft-neg-in |
| 622× | distribute-rgt-neg-in |
| 554× | associate-*r* |
| 504× | associate-*l* |
| 472× | associate-/l* |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 371 | 6687 |
| 1 | 1079 | 6239 |
| 2 | 4707 | 6211 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 x.im y.re) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) |
(*.f64 -1 (/.f64 x.re y.re)) |
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))) |
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) |
(/.f64 x.im y.re) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(*.f64 -1 (/.f64 x.im y.re)) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2)))))) |
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) 1) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) |
(/.f64 (pow.f64 (cbrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) (sqrt.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))))) |
(/.f64 (sqrt.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) (sqrt.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) |
(/.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 x.re 3)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) (-.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)))) |
(/.f64 (-.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.re x.re) (*.f64 x.re x.re)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (+.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.re 3) 3) (pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) (+.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 x.re 3)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (-.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (pow.f64 x.re 3)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) 3)) (+.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re x.re) 3) (pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (+.f64 (*.f64 (*.f64 x.re x.re) (*.f64 x.re x.re)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (+.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)))))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) 1) (*.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) -1) (*.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) 1) (*.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) -1) (*.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (neg.f64 x.re) (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))))) |
(/.f64 (neg.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))) |
(pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 3) |
(pow.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 3) 1/3) |
(sqrt.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 3)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3))) |
(cbrt.f64 (*.f64 (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (/.f64 (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(exp.f64 (log.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) |
(fma.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.im (/.f64 y.re y.im)))) 1) |
(*.f64 1 (/.f64 x.im (/.f64 y.re y.im))) |
(*.f64 y.im (*.f64 x.im (/.f64 1 y.re))) |
(*.f64 y.im (*.f64 1 (/.f64 x.im y.re))) |
(*.f64 x.im (*.f64 y.im (/.f64 1 y.re))) |
(*.f64 (*.f64 y.im x.im) (/.f64 1 y.re)) |
(*.f64 (/.f64 x.im (/.f64 y.re y.im)) 1) |
(*.f64 (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im))) (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re))) |
(*.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re))) |
(*.f64 (/.f64 1 y.re) (*.f64 y.im x.im)) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (neg.f64 y.re))) |
(*.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re))) |
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (*.f64 y.im x.im) (cbrt.f64 y.re))) |
(*.f64 (/.f64 x.im y.re) y.im) |
(*.f64 (/.f64 x.im (sqrt.f64 y.re)) (/.f64 y.im (sqrt.f64 y.re))) |
(*.f64 (/.f64 y.im y.re) x.im) |
(*.f64 (*.f64 1 (/.f64 x.im y.re)) y.im) |
(*.f64 (/.f64 1 (neg.f64 y.re)) (*.f64 y.im (neg.f64 x.im))) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im y.re)) |
(*.f64 (/.f64 y.im (sqrt.f64 y.re)) (/.f64 x.im (sqrt.f64 y.re))) |
(*.f64 (/.f64 y.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 x.im (cbrt.f64 y.re))) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 y.im (cbrt.f64 y.re))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 y.re))) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.re)) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (sqrt.f64 y.re))) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (cbrt.f64 (*.f64 y.re y.re))) (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (/.f64 y.re y.im)) x.im) |
(*.f64 (/.f64 1 (/.f64 y.re (sqrt.f64 (*.f64 y.im x.im)))) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 (/.f64 1 (/.f64 y.re (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)))) (cbrt.f64 (*.f64 y.im x.im))) |
(*.f64 (/.f64 y.im (neg.f64 y.re)) (neg.f64 x.im)) |
(*.f64 (/.f64 y.im (/.f64 y.re 1)) x.im) |
(*.f64 (/.f64 y.im (/.f64 y.re (sqrt.f64 x.im))) (sqrt.f64 x.im)) |
(*.f64 (/.f64 y.im (/.f64 y.re (pow.f64 (cbrt.f64 x.im) 2))) (cbrt.f64 x.im)) |
(*.f64 (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)) (sqrt.f64 y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 y.re x.im)) (cbrt.f64 y.im)) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) y.re) (cbrt.f64 (*.f64 y.im x.im))) |
(pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 3) |
(pow.f64 (/.f64 y.re (*.f64 y.im x.im)) -1) |
(pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) 1/3) |
(neg.f64 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re))) |
(neg.f64 (*.f64 (/.f64 y.im y.re) (neg.f64 x.im))) |
(neg.f64 (*.f64 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re)) 1)) |
(neg.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re)))) |
(sqrt.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 x.im (/.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) |
(expm1.f64 (log1p.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(exp.f64 (log.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 x.im (/.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
| Outputs |
|---|
(/.f64 x.im y.re) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (/.f64 x.im y.re))) |
(fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (/.f64 x.im y.re)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re))) |
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)) (/.f64 x.re y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))))) |
(+.f64 (fma.f64 -1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re))) |
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)) (/.f64 x.re y.re))) |
(*.f64 -1 (/.f64 x.re y.re)) |
(/.f64 (neg.f64 x.re) y.re) |
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(*.f64 -1 (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(-.f64 (/.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.re y.re)) (/.f64 x.re y.re)) |
(-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (neg.f64 y.re))) (/.f64 x.re y.re)) |
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))) |
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 -1 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) 1/2))) |
(-.f64 (-.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (/.f64 x.re y.re)) |
(-.f64 (fma.f64 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)) 1/2 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (neg.f64 y.re)))) (/.f64 x.re y.re)) |
(+.f64 (*.f64 -1 (/.f64 x.re y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))))) |
(fma.f64 -1 (/.f64 x.re y.re) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (fma.f64 -1 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) 1/2)))) |
(-.f64 (fma.f64 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) 1/2 (-.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) 1/2) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))) (/.f64 x.re y.re)) |
(-.f64 (-.f64 (*.f64 1/2 (+.f64 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)) (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (/.f64 x.re y.re)) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)))) |
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re))) |
(+.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)) (/.f64 x.re y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))))) |
(+.f64 (fma.f64 -1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) (*.f64 y.im y.im)) (/.f64 x.re y.re))) |
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 4)) x.im) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.re)) (/.f64 x.re y.re))) |
(/.f64 x.im y.re) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (/.f64 x.im y.re))) |
(fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re)) (+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (/.f64 x.im y.re)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (fma.f64 -1/2 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)))) |
(*.f64 -1 (/.f64 x.im y.re)) |
(/.f64 (neg.f64 x.im) y.re) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im))) |
(*.f64 -1 (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(-.f64 (/.f64 (neg.f64 x.im) y.re) (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2))))) |
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (*.f64 (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)) 1/2))) |
(-.f64 (-.f64 (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) 1/2) (/.f64 x.re y.im)) (/.f64 x.im y.re)) |
(-.f64 (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) 1/2) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 2)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 y.re x.im) (pow.f64 y.im 2)))))) |
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (*.f64 1/2 (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.im 3) (*.f64 y.re y.re))) (/.f64 y.re (/.f64 (*.f64 y.im y.im) x.im)))))) |
(-.f64 (fma.f64 1/2 (+.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.im y.im)) (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (*.f64 y.re y.re))) (/.f64 (neg.f64 x.re) y.im)) (/.f64 x.im y.re)) |
(-.f64 (*.f64 (/.f64 1/2 y.im) (+.f64 (/.f64 (*.f64 x.im y.re) y.im) (/.f64 (*.f64 y.re (*.f64 y.re x.re)) (*.f64 y.im y.im)))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.im (/.f64 y.im y.re))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (*.f64 x.im (/.f64 y.im y.re))) |
(*.f64 x.im (*.f64 (/.f64 y.im y.re) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re))))) |
(*.f64 x.re (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.im (/.f64 y.im y.re))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (*.f64 x.im (/.f64 y.im y.re))) |
(*.f64 x.im (*.f64 (/.f64 y.im y.re) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 x.im (/.f64 y.im y.re))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (*.f64 x.im (/.f64 y.im y.re))) |
(*.f64 x.im (*.f64 (/.f64 y.im y.re) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (*.f64 x.re (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (/.f64 (*.f64 y.im x.im) y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.im y.im (*.f64 y.re y.re)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.im (/.f64 y.im y.re) x.re)) |
(+.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)))) |
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)))) |
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) 1) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(/.f64 (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) |
(*.f64 (/.f64 (sqrt.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) (hypot.f64 y.re y.im)) (sqrt.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)) (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)) (hypot.f64 y.re y.im))) |
(/.f64 (pow.f64 (cbrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) |
(/.f64 (pow.f64 (cbrt.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))))) |
(*.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re)) 2) (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) (sqrt.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) (sqrt.f64 (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))))) |
(/.f64 (hypot.f64 (pow.f64 x.re 3/2) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3/2)) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re))) (sqrt.f64 (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))))) |
(/.f64 (*.f64 (/.f64 (hypot.f64 (pow.f64 x.re 3/2) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3/2)) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re))) (sqrt.f64 (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))))) |
(/.f64 (sqrt.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) (sqrt.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) (sqrt.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))))) |
(/.f64 (sqrt.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re))) (sqrt.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))))) |
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(/.f64 (-.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 x.re 3)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) (-.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (-.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im))) (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im))))) (*.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (-.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (/.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 y.re (hypot.f64 y.re y.im))) (*.f64 y.re (hypot.f64 y.re y.im)))) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) (hypot.f64 y.re y.im)) |
(/.f64 (-.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (/.f64 (/.f64 (pow.f64 (*.f64 x.im y.im) 2) (*.f64 y.re (hypot.f64 y.re y.im))) (*.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.re x.re) (*.f64 x.re x.re)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (+.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)))) |
(/.f64 (-.f64 (*.f64 x.re (pow.f64 x.re 3)) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 4)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re)))) (+.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)))) |
(/.f64 (-.f64 (pow.f64 x.re 4) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 4)) (*.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2))))) |
(*.f64 1 (/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.re 3) 3) (pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))) (+.f64 (*.f64 (pow.f64 x.re 3) (pow.f64 x.re 3)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (-.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) (pow.f64 x.re 3)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (pow.f64 x.re 3) 3) (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (+.f64 (pow.f64 x.re 6) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) (pow.f64 x.re 3))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.re 3) 3) (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (fma.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) (pow.f64 x.re 3)) (pow.f64 x.re 6)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.re 3) 3) (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) 3)) (*.f64 (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) (*.f64 (hypot.f64 y.re y.im) (fma.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3) (pow.f64 x.re 3)) (pow.f64 x.re 6))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) 3)) (+.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im))) 3)) (fma.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im))) (-.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (fma.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (hypot.f64 y.re y.im))) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (fma.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (hypot.f64 y.re y.im))) (-.f64 (*.f64 (/.f64 x.im y.re) (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 x.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re x.re) 3) (pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (+.f64 (*.f64 (*.f64 x.re x.re) (*.f64 x.re x.re)) (*.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (+.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2) (*.f64 x.re x.re)))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 x.re 6) (pow.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) 3)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) (+.f64 (*.f64 x.re (pow.f64 x.re 3)) (+.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 4) (*.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re))))) |
(/.f64 (-.f64 (pow.f64 x.re 6) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 6)) (*.f64 (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (*.f64 (hypot.f64 y.re y.im) (fma.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (fma.f64 x.re x.re (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (pow.f64 x.re 4))))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) 1) (*.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) -1) (*.f64 (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) 1) (*.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) -1) (*.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.re (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2))) (*.f64 (hypot.f64 y.re y.im) (+.f64 (neg.f64 x.re) (/.f64 x.im (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.re x.re) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.re (*.f64 x.im (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2) (*.f64 x.re x.re)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (fma.f64 x.re x.re (*.f64 (/.f64 x.im (/.f64 y.re y.im)) (-.f64 (/.f64 x.im (/.f64 y.re y.im)) x.re)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 (*.f64 x.im (/.f64 y.im y.re)) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re)))) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (+.f64 (pow.f64 x.re 3) (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 3)) (hypot.f64 y.re y.im)) (fma.f64 x.re x.re (*.f64 x.im (*.f64 (/.f64 y.im y.re) (-.f64 (*.f64 x.im (/.f64 y.im y.re)) x.re))))) |
(/.f64 (neg.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 1) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 2) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(pow.f64 (cbrt.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 3) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 3) 1/3) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(sqrt.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) 2)) |
(fabs.f64 (/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im))) |
(log.f64 (exp.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) 3)) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(cbrt.f64 (*.f64 (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(cbrt.f64 (/.f64 (pow.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(expm1.f64 (log1p.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) 1)) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 x.re (*.f64 x.im (/.f64 y.im y.re))) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.im (/.f64 y.im y.re) x.re) (hypot.f64 y.re y.im)) |
(fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)))) |
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (*.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)))) |
(fma.f64 (/.f64 y.im y.re) (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (hypot.f64 y.re y.im))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.im (/.f64 y.re y.im)))) 1) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 1 (/.f64 x.im (/.f64 y.re y.im))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 y.im (*.f64 x.im (/.f64 1 y.re))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 y.im (*.f64 1 (/.f64 x.im y.re))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 x.im (*.f64 y.im (/.f64 1 y.re))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (*.f64 y.im x.im) (/.f64 1 y.re)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.im (/.f64 y.re y.im)) 1) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im))) (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (sqrt.f64 (*.f64 y.im x.im)) (*.f64 (sqrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (*.f64 (cbrt.f64 (*.f64 y.im x.im)) (/.f64 1 y.re))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (/.f64 1 y.re) (cbrt.f64 (*.f64 x.im y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 (cbrt.f64 (*.f64 x.im y.im)) y.re)) |
(*.f64 (/.f64 1 y.re) (*.f64 y.im x.im)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (*.f64 y.im (neg.f64 x.im)) (/.f64 1 (neg.f64 y.re))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 (*.f64 y.im x.im) (sqrt.f64 y.re))) |
(*.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 y.im (/.f64 (sqrt.f64 y.re) x.im))) |
(*.f64 (/.f64 x.im (sqrt.f64 y.re)) (/.f64 y.im (sqrt.f64 y.re))) |
(/.f64 (*.f64 y.im (/.f64 x.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (*.f64 y.im x.im) (cbrt.f64 y.re))) |
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (cbrt.f64 y.re))) |
(*.f64 (/.f64 y.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 x.im (cbrt.f64 y.re))) |
(*.f64 (/.f64 x.im y.re) y.im) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.im (sqrt.f64 y.re)) (/.f64 y.im (sqrt.f64 y.re))) |
(*.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 y.im (/.f64 (sqrt.f64 y.re) x.im))) |
(/.f64 (*.f64 y.im (/.f64 x.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 y.im y.re) x.im) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (*.f64 1 (/.f64 x.im y.re)) y.im) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 (neg.f64 y.re)) (*.f64 y.im (neg.f64 x.im))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.im 1) (/.f64 x.im y.re)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.im (sqrt.f64 y.re)) (/.f64 x.im (sqrt.f64 y.re))) |
(*.f64 (/.f64 1 (sqrt.f64 y.re)) (/.f64 y.im (/.f64 (sqrt.f64 y.re) x.im))) |
(*.f64 (/.f64 x.im (sqrt.f64 y.re)) (/.f64 y.im (sqrt.f64 y.re))) |
(/.f64 (*.f64 y.im (/.f64 x.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 y.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 x.im (cbrt.f64 y.re))) |
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (cbrt.f64 y.re))) |
(*.f64 (/.f64 x.im 1) (/.f64 y.im y.re)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 y.im (cbrt.f64 y.re))) |
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (cbrt.f64 y.re))) |
(*.f64 (/.f64 y.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 x.im (cbrt.f64 y.re))) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) 1) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) y.re) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (sqrt.f64 (*.f64 y.im x.im)) (cbrt.f64 y.re))) |
(*.f64 (/.f64 1 (cbrt.f64 (*.f64 y.re y.re))) (/.f64 (*.f64 x.im y.im) (cbrt.f64 y.re))) |
(*.f64 (/.f64 y.im (cbrt.f64 (*.f64 y.re y.re))) (/.f64 x.im (cbrt.f64 y.re))) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) 1) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) y.re)) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (/.f64 1 y.re) (cbrt.f64 (*.f64 x.im y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 (cbrt.f64 (*.f64 x.im y.im)) y.re)) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 (*.f64 y.im x.im)) (sqrt.f64 y.re))) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (sqrt.f64 y.re)) (/.f64 (cbrt.f64 (*.f64 x.im y.im)) (sqrt.f64 y.re))) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) (cbrt.f64 (*.f64 y.re y.re))) (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 x.im (/.f64 y.im y.re))) (/.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (cbrt.f64 (*.f64 y.re y.re)))) |
(*.f64 (/.f64 1 (/.f64 y.re y.im)) x.im) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 (/.f64 y.re (sqrt.f64 (*.f64 y.im x.im)))) (sqrt.f64 (*.f64 y.im x.im))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 (/.f64 y.re (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)))) (cbrt.f64 (*.f64 y.im x.im))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (/.f64 1 y.re) (cbrt.f64 (*.f64 x.im y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 (cbrt.f64 (*.f64 x.im y.im)) y.re)) |
(*.f64 (/.f64 y.im (neg.f64 y.re)) (neg.f64 x.im)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.im (/.f64 y.re 1)) x.im) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.im (/.f64 y.re (sqrt.f64 x.im))) (sqrt.f64 x.im)) |
(*.f64 (sqrt.f64 x.im) (*.f64 (/.f64 y.im y.re) (sqrt.f64 x.im))) |
(*.f64 (/.f64 y.im y.re) (*.f64 (sqrt.f64 x.im) (sqrt.f64 x.im))) |
(*.f64 (/.f64 y.im (/.f64 y.re (pow.f64 (cbrt.f64 x.im) 2))) (cbrt.f64 x.im)) |
(*.f64 (cbrt.f64 x.im) (*.f64 (/.f64 y.im y.re) (pow.f64 (cbrt.f64 x.im) 2))) |
(*.f64 (/.f64 y.im y.re) (*.f64 (pow.f64 (cbrt.f64 x.im) 2) (cbrt.f64 x.im))) |
(*.f64 (/.f64 (sqrt.f64 y.im) (/.f64 y.re x.im)) (sqrt.f64 y.im)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 y.re x.im)) (cbrt.f64 y.im)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 y.im x.im) 2)) y.re) (cbrt.f64 (*.f64 y.im x.im))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (*.f64 (/.f64 1 y.re) (cbrt.f64 (*.f64 x.im y.im)))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.im y.im) 2)) (/.f64 (cbrt.f64 (*.f64 x.im y.im)) y.re)) |
(pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 1) |
(*.f64 x.im (/.f64 y.im y.re)) |
(pow.f64 (sqrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 2) |
(*.f64 x.im (/.f64 y.im y.re)) |
(pow.f64 (cbrt.f64 (/.f64 x.im (/.f64 y.re y.im))) 3) |
(*.f64 x.im (/.f64 y.im y.re)) |
(pow.f64 (/.f64 y.re (*.f64 y.im x.im)) -1) |
(*.f64 x.im (/.f64 y.im y.re)) |
(pow.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3) 1/3) |
(*.f64 x.im (/.f64 y.im y.re)) |
(neg.f64 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(neg.f64 (*.f64 (/.f64 y.im y.re) (neg.f64 x.im))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(neg.f64 (*.f64 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re)) 1)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(neg.f64 (*.f64 1 (/.f64 (*.f64 y.im x.im) (neg.f64 y.re)))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(sqrt.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (*.f64 x.im (/.f64 y.im y.re)) 2)) |
(fabs.f64 (*.f64 x.im (/.f64 y.im y.re))) |
(log.f64 (exp.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 x.im (/.f64 y.re y.im))))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(cbrt.f64 (pow.f64 (/.f64 x.im (/.f64 y.re y.im)) 3)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(expm1.f64 (log1p.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(exp.f64 (log.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im y.re)) |
(exp.f64 (*.f64 (log.f64 (/.f64 x.im (/.f64 y.re y.im))) 1)) |
(*.f64 x.im (/.f64 y.im y.re)) |
(log1p.f64 (expm1.f64 (/.f64 x.im (/.f64 y.re y.im)))) |
(*.f64 x.im (/.f64 y.im y.re)) |
Compiled 32458 to 12051 computations (62.9% saved)
27 alts after pruning (25 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1090 | 13 | 1103 |
| Fresh | 4 | 12 | 16 |
| Picked | 1 | 0 | 1 |
| Done | 3 | 2 | 5 |
| Total | 1098 | 27 | 1125 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 98.6% | (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
| 34.9% | (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) | |
| 12.3% | (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) | |
| 18.4% | (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) | |
| 10.2% | (/.f64 (neg.f64 x.re) y.re) | |
| 6.7% | (/.f64 (neg.f64 x.im) y.re) | |
| 32.7% | (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) | |
| 16.9% | (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) | |
| 10.7% | (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) | |
| ✓ | 46.6% | (/.f64 x.re y.re) |
| ▶ | 6.6% | (/.f64 x.im y.re) |
| ✓ | 36.6% | (/.f64 x.im y.im) |
| 54.7% | (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) | |
| ▶ | 42.8% | (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
| 25.6% | (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) | |
| 13.3% | (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) | |
| 53.1% | (*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) | |
| ▶ | 19.0% | (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
| 24.5% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) | |
| 98.2% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re))) | |
| 65.9% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) | |
| ▶ | 24.9% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
| 24.2% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) | |
| 33.3% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) | |
| 18.8% | (*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) | |
| 17.8% | (*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) | |
| 36.5% | (*.f64 x.im (/.f64 1 y.im)) |
Compiled 682 to 426 computations (37.5% saved)
Found 4 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (/.f64 y.im (hypot.f64 y.re y.im)) |
| ✓ | 99.9% | (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
| ✓ | 99.4% | (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) |
| ✓ | 94.4% | (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) |
Compiled 60 to 10 computations (83.3% saved)
39 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y.im | @ | -inf | (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) |
| 0.0ms | y.re | @ | inf | (/.f64 y.im (hypot.f64 y.re y.im)) |
| 0.0ms | x.im | @ | 0 | (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) |
| 0.0ms | y.im | @ | -inf | (/.f64 y.im (hypot.f64 y.re y.im)) |
| 0.0ms | x.im | @ | inf | (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) |
| 1× | batch-egg-rewrite |
| 1064× | swap-sqr |
| 802× | associate-/r/ |
| 546× | distribute-lft-neg-in |
| 486× | distribute-rgt-neg-in |
| 446× | associate-/l/ |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 122 |
| 1 | 280 | 122 |
| 2 | 3924 | 122 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) |
(fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.re (/.f64 x.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2) (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 (cbrt.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re 1) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 x.re) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (sqrt.f64 y.re)) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 x.re (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re 1) (/.f64 y.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 x.re (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (sqrt.f64 x.re) 1) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.re) 1) (*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) y.re) (sqrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (cbrt.f64 x.re) 1) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) 1) (*.f64 (/.f64 (cbrt.f64 x.re) (hypot.f64 y.re y.im)) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (cbrt.f64 x.re) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re -1) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) 1)) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.re))) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 x.re) y.re))) (sqrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.re))) (cbrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (hypot.f64 y.re y.im) y.re)) (cbrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) (/.f64 y.re 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 y.re))) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) -1) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (neg.f64 x.re) -1) (/.f64 y.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (neg.f64 x.re) (hypot.f64 y.re y.im)) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) 1) (/.f64 y.re (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) 1)) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.re))) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) -1) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) 1) (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) 1) (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) 1/3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) -1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (pow.f64 (exp.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 (hypot.f64 y.re y.im) y.re) 3))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((+.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 1 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) 1) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (neg.f64 (/.f64 (*.f64 x.im (neg.f64 y.im)) (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (-.f64 1 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 -1 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2))) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (-.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 3)) (*.f64 1 (+.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) 1/3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (*.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1) (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2))) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) -1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 1 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 3)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.im (/.f64 1 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (/.f64 y.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 (cbrt.f64 y.im) (/.f64 1 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (hypot.f64 y.re y.im)) y.im) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 y.im) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 y.im) 1) (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im)) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) 1) (/.f64 (cbrt.f64 y.im) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (*.f64 y.im y.im)))) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (hypot.f64 y.re y.im) y.im) -1) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 y.im (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 1 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (neg.f64 y.im) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 y.im (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 3)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 (hypot.f64 y.re y.im) 3))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) (/.f64 y.im (hypot.f64 y.re y.im))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 1192× | associate-*r* |
| 1002× | *-commutative |
| 940× | associate-*l* |
| 904× | associate-/l* |
| 624× | associate-*r/ |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 826 | 17325 |
| 1 | 2379 | 16809 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 7) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 (*.f64 x.re y.re) y.im)))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re)) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 6)))))) |
(*.f64 -1 x.re) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (*.f64 -1 x.re)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (*.f64 -1 x.re)))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 6))) (*.f64 -1 x.re)))))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re)) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.re 2)))) (pow.f64 y.im 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re))) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (/.f64 (*.f64 x.re y.re) y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 7))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5))))))) (pow.f64 y.im 7)))))) |
(*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 7)))))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
(*.f64 -1 x.im) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 -1 x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
(*.f64 -1 x.re) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1 x.re)))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.re 4)))) (pow.f64 y.im 3))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (/.f64 x.im y.im))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2)))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.im 4))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 3)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(/.f64 y.im y.re) |
(+.f64 (/.f64 y.im y.re) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)))) |
(+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))))) |
(+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 7))) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)))))) |
1 |
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 4))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
-1 |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) 1) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))) (pow.f64 y.im 4)))) 1) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 -1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))) (pow.f64 y.im 4))))) 1) |
1 |
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(/.f64 y.im y.re) |
(+.f64 (/.f64 y.im y.re) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)))) |
(+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.re 5))))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 7)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))) (+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.re 5)))))) |
(*.f64 -1 (/.f64 y.im y.re)) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 y.im y.re))) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (*.f64 -1 (/.f64 y.im y.re))))) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (*.f64 -1 (/.f64 y.im y.re))))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re (hypot.f64 y.re y.im))) |
(*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 1) |
(*.f64 1 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2) (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 (cbrt.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) y.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re y.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re 1) y.re)) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re) |
(*.f64 (neg.f64 x.re) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) y.re) |
(*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (sqrt.f64 y.re)) (sqrt.f64 y.re)) |
(*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) |
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 x.re (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 x.re 1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 x.re (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (sqrt.f64 x.re) 1) y.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) 1) (*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) y.re)) |
(*.f64 (*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) y.re) (sqrt.f64 x.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (cbrt.f64 x.re) 1) y.re)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) 1) (*.f64 (/.f64 (cbrt.f64 x.re) (hypot.f64 y.re y.im)) y.re)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (cbrt.f64 x.re) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 x.re)) |
(*.f64 (/.f64 x.re -1) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) 1)) y.re) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 x.re) y.re))) (sqrt.f64 x.re)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.re))) (cbrt.f64 x.re)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (hypot.f64 y.re y.im) y.re)) (cbrt.f64 x.re)) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) y.re) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) (/.f64 y.re 1)) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) -1) (neg.f64 y.re)) |
(*.f64 (/.f64 (neg.f64 x.re) -1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (neg.f64 x.re) (hypot.f64 y.re y.im)) (neg.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) 1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.re 1) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) 1)) y.re) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) -1) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) 1) (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) 1) (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (neg.f64 y.re))) |
(pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 1) |
(pow.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2) |
(pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) |
(pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) 1/3) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) -1) |
(neg.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (neg.f64 y.re))) |
(sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) |
(log.f64 (pow.f64 (exp.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3)) |
(cbrt.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 (hypot.f64 y.re y.im) y.re) 3))) |
(expm1.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(exp.f64 (log.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(exp.f64 (*.f64 (log.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1)) |
(log1p.f64 (expm1.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(+.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)) |
(+.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) |
(+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 1 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) 1) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(+.f64 (neg.f64 (/.f64 (*.f64 x.im (neg.f64 y.im)) (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (-.f64 1 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) |
(-.f64 (+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) |
(-.f64 (+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) |
(*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) |
(*.f64 1 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(*.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(*.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(*.f64 -1 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(*.f64 (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2))) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (-.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 3)) (*.f64 1 (+.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)))))) |
(pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) |
(pow.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) |
(pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 3) |
(pow.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) 1/3) |
(neg.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(sqrt.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2)) |
(log.f64 (exp.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(cbrt.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(exp.f64 (log.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1)) |
(log1p.f64 (expm1.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(+.f64 (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) 1) |
(*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 1) |
(*.f64 1 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (*.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1) (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2))) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 3) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 3) 1/3) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) -1) |
(neg.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im)))) |
(neg.f64 (*.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))) 1)) |
(neg.f64 (*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))) |
(neg.f64 (*.f64 1 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))))) |
(neg.f64 (/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 3)) |
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) 1) |
(*.f64 y.im (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 1) |
(*.f64 1 (/.f64 y.im (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 (cbrt.f64 y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) y.im) |
(*.f64 (neg.f64 y.im) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(*.f64 (/.f64 (sqrt.f64 y.im) 1) (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im)) (sqrt.f64 y.im)) |
(*.f64 (/.f64 (sqrt.f64 y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) 1) (/.f64 (cbrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (*.f64 y.im y.im)))) (cbrt.f64 y.im)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 y.im)) |
(pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 3) |
(pow.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 3) 1/3) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) y.im) -1) |
(neg.f64 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im)))) |
(neg.f64 (*.f64 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im))) 1)) |
(neg.f64 (*.f64 y.im (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))) |
(neg.f64 (*.f64 1 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im))))) |
(neg.f64 (/.f64 (neg.f64 y.im) (hypot.f64 y.re y.im))) |
(sqrt.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 y.im (hypot.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 3)) |
(cbrt.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(exp.f64 (log.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
| Outputs |
|---|
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re y.im) y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (/.f64 x.re (/.f64 y.im y.re))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (*.f64 (/.f64 x.re y.im) y.re)) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im))) |
(fma.f64 -1 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (/.f64 x.re (/.f64 y.im y.re)))) |
(fma.f64 -1 (*.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 5)) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (*.f64 (/.f64 x.re y.im) y.re))) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y.re 7) (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.im 7))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/8 (/.f64 x.re (pow.f64 y.im 5))) (*.f64 -1/4 (/.f64 x.re (pow.f64 y.im 5)))) (pow.f64 y.im 2)))))) (/.f64 (*.f64 x.re y.re) y.im)))) |
(fma.f64 -1 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1 (*.f64 (pow.f64 y.re 7) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 5)) -3/8) (*.f64 y.im y.im))))) (/.f64 x.re (/.f64 y.im y.re))))) |
(fma.f64 -1 (*.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5)) (pow.f64 y.re 5)) (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (fma.f64 -1 (*.f64 (pow.f64 y.re 7) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.im 7)) (*.f64 -1/2 (/.f64 (/.f64 (*.f64 x.re -3/8) (pow.f64 y.im 5)) (*.f64 y.im y.im))))) (*.f64 (/.f64 x.re y.im) y.re)))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) x.re) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) x.re) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re)) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 4)) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) x.re)) |
(fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 4)) (fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) x.re)) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.im 6))) (*.f64 -1/2 (*.f64 (pow.f64 y.im 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4))))))) (pow.f64 y.re 6)))))) |
(fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (pow.f64 y.re 4)) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) x.re) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 (*.f64 -1/2 (*.f64 y.im y.im)) (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8))) (pow.f64 y.re 6))))) |
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 4)) (fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) x.re)) (/.f64 (neg.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.im 6)) (*.f64 (*.f64 -1/2 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8))) (*.f64 y.im y.im)))) (pow.f64 y.re 6))) |
(*.f64 -1 x.re) |
(neg.f64 x.re) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (*.f64 -1 x.re)) |
(fma.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (neg.f64 x.re)) |
(fma.f64 1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (neg.f64 x.re)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (*.f64 -1 x.re)))) |
(fma.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (neg.f64 x.re)))) |
(+.f64 (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 4)) -3/8) (fma.f64 1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (neg.f64 x.re))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 4))) (+.f64 (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.im 6)) (pow.f64 y.re 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.im 4))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.im 2)) (pow.f64 y.re 6))) (*.f64 -1 x.re)))))) |
(fma.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (fma.f64 1/8 (/.f64 x.re (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.im 4)) -3/8) (/.f64 (pow.f64 y.re 6) (*.f64 y.im y.im))) (neg.f64 x.re)))))) |
(fma.f64 1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (+.f64 (fma.f64 1/8 (*.f64 (/.f64 x.re (pow.f64 y.re 6)) (pow.f64 y.im 6)) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 x.re (*.f64 (pow.f64 y.im 4) -3/8)) (pow.f64 y.re 6)) (*.f64 y.im y.im)) (neg.f64 x.re))) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 4)) (pow.f64 y.im 4)) -3/8))) |
x.re |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) x.re) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) x.re) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) x.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re)) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) -3/8)) x.re)) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 4))) x.re)) |
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (/.f64 x.re (pow.f64 y.re 6))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.re 2)))) (pow.f64 y.im 6))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 x.re (pow.f64 y.re 4))) (*.f64 -1/8 (/.f64 x.re (pow.f64 y.re 4)))) (pow.f64 y.im 4))) x.re))) |
(fma.f64 -1 (*.f64 (pow.f64 y.im 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.re 6)) (*.f64 -1/2 (/.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 4)) -3/8) (*.f64 y.re y.re))))) (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (*.f64 (/.f64 x.re (pow.f64 y.re 4)) -3/8)) x.re))) |
(fma.f64 -1 (*.f64 (pow.f64 y.im 6) (fma.f64 1/8 (/.f64 x.re (pow.f64 y.re 6)) (*.f64 -1/2 (/.f64 (/.f64 x.re (pow.f64 y.re 4)) (/.f64 (*.f64 y.re y.re) -3/8))))) (fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1 (*.f64 (pow.f64 y.im 4) (/.f64 (*.f64 x.re -3/8) (pow.f64 y.re 4))) x.re))) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re y.im) y.re) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (/.f64 (*.f64 x.re y.re) y.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (/.f64 x.re (/.f64 y.im y.re))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (*.f64 (/.f64 x.re y.im) y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (/.f64 (*.f64 x.re y.re) y.im))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8) (pow.f64 y.im 5)) (/.f64 x.re (/.f64 y.im y.re)))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (/.f64 (pow.f64 y.im 5) -3/8)) (*.f64 (/.f64 x.re y.im) y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.im 5))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 x.re (pow.f64 y.re 7))) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5))))))) (pow.f64 y.im 7)))))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8) (pow.f64 y.im 5)) (/.f64 x.re (/.f64 y.im y.re))) (neg.f64 (/.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.re 7)) (*.f64 (*.f64 -1/2 (*.f64 y.re y.re)) (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8))) (pow.f64 y.im 7))))) |
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (fma.f64 -1 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (/.f64 (pow.f64 y.im 5) -3/8)) (*.f64 (/.f64 x.re y.im) y.re))) (/.f64 (neg.f64 (fma.f64 1/8 (*.f64 x.re (pow.f64 y.re 7)) (*.f64 (*.f64 (pow.f64 y.re 5) (*.f64 x.re -3/8)) (*.f64 (*.f64 y.re y.re) -1/2)))) (pow.f64 y.im 7))) |
(*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) |
(neg.f64 (/.f64 x.re (/.f64 y.im y.re))) |
(/.f64 (neg.f64 x.re) (/.f64 y.im y.re)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) 1/2)) |
(fma.f64 -1 (*.f64 (/.f64 x.re y.im) y.re) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) 1/2)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (*.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) 1/2)))) |
(+.f64 (*.f64 (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 5) x.re)) -3/8) (fma.f64 -1 (*.f64 (/.f64 x.re y.im) y.re) (*.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) 1/2))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x.re (pow.f64 y.re 5))) (*.f64 -1/4 (*.f64 x.re (pow.f64 y.re 5)))) (pow.f64 y.re 2)) (pow.f64 y.im 7))) (+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 5)) (pow.f64 y.im 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 7)))))))) |
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 x.re (pow.f64 y.re 5)) -3/8) (/.f64 (pow.f64 y.im 7) (*.f64 y.re y.re))) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1/4 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (fma.f64 -1/8 (/.f64 x.re (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (fma.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (*.f64 1/8 (/.f64 (*.f64 x.re (pow.f64 y.re 7)) (pow.f64 y.im 7)))))))) |
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 (pow.f64 y.re 5) (*.f64 x.re -3/8)) (pow.f64 y.im 7)) (*.f64 y.re y.re)) (fma.f64 -1 (*.f64 (/.f64 x.re y.im) y.re) (+.f64 (fma.f64 1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (*.f64 (pow.f64 y.re 7) (/.f64 (*.f64 x.re 1/8) (pow.f64 y.im 7)))) (*.f64 (/.f64 (pow.f64 y.re 5) (/.f64 (pow.f64 y.im 5) x.re)) -3/8)))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.im x.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.im x.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) x.re) (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) x.re) (*.f64 (/.f64 y.im y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) |
(+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)) |
(fma.f64 -1/2 (/.f64 y.re (/.f64 (/.f64 (*.f64 y.im y.im) x.im) y.re)) (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (fma.f64 -1/2 (/.f64 y.re (/.f64 (/.f64 (*.f64 y.im y.im) x.im) y.re)) (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im))) |
(*.f64 -1 x.im) |
(neg.f64 x.im) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (*.f64 -1 x.im)) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im)) |
(neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im))))) |
(fma.f64 -1 (*.f64 (/.f64 x.re y.im) y.re) (fma.f64 -1 x.im (/.f64 1/2 (/.f64 (*.f64 y.im y.im) (*.f64 (*.f64 y.re y.re) x.im))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) y.im)) (+.f64 (*.f64 -1 x.im) (+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2)))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 -1 x.im (*.f64 1/2 (+.f64 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)))))) |
(+.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (*.f64 1/2 (+.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (/.f64 y.re (/.f64 (/.f64 (*.f64 y.im y.im) x.im) y.re))))) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) |
(+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im)) |
(fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)) |
(fma.f64 -1/2 (/.f64 y.re (/.f64 (/.f64 (*.f64 y.im y.im) x.im) y.re)) (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 2))) (+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 3)) (fma.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (*.f64 y.im y.im) x.im)) (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 3)) (pow.f64 y.re 3)) (fma.f64 -1/2 (/.f64 y.re (/.f64 (/.f64 (*.f64 y.im y.im) x.im) y.re)) (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im))) |
x.re |
(+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)) |
(+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) x.re) (/.f64 y.im (/.f64 y.re x.im))) |
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) x.re) (*.f64 (/.f64 y.im y.re) x.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re)))) |
(fma.f64 -1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))) |
(fma.f64 -1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))) |
(*.f64 -1 x.re) |
(neg.f64 x.re) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re)) |
(*.f64 -1 (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im)))) |
(neg.f64 (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (*.f64 -1 x.re))) |
(fma.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (*.f64 -1 (+.f64 x.re (/.f64 y.im (/.f64 y.re x.im))))) |
(fma.f64 1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (neg.f64 (+.f64 x.re (*.f64 (/.f64 y.im y.re) x.im)))) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y.im x.im) y.re)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3))) (*.f64 -1 x.re)))) |
(fma.f64 1/2 (/.f64 (*.f64 x.re (*.f64 y.im y.im)) (*.f64 y.re y.re)) (fma.f64 -1 (/.f64 y.im (/.f64 y.re x.im)) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 3) x.im)) (neg.f64 x.re)))) |
(fma.f64 1/2 (*.f64 (/.f64 x.re (*.f64 y.re y.re)) (*.f64 y.im y.im)) (fma.f64 -1 (*.f64 (/.f64 y.im y.re) x.im) (fma.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 3)) (neg.f64 x.re)))) |
(*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (*.f64 y.im x.im)) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 x.re (*.f64 y.re (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(+.f64 (*.f64 (*.f64 x.re y.re) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) (*.f64 (*.f64 y.im x.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) |
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) -1) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))) |
(fma.f64 (/.f64 (neg.f64 x.re) (pow.f64 y.re 3)) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) |
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.re 3)))) (pow.f64 y.im 2)) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.re 4)))) (pow.f64 y.im 3))))) |
(fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.re 3)) -1) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (*.f64 (pow.f64 y.im 3) (*.f64 (/.f64 x.im (pow.f64 y.re 4)) -1))))) |
(+.f64 (fma.f64 (/.f64 (neg.f64 x.re) (pow.f64 y.re 3)) (*.f64 y.im y.im) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im))) (*.f64 (pow.f64 y.im 3) (/.f64 (neg.f64 x.im) (pow.f64 y.re 4)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (-.f64 (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)))) (*.f64 1/2 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im))))) |
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (+.f64 (/.f64 x.im y.im) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im)) (*.f64 1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im))))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4))))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (-.f64 (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (+.f64 (*.f64 -1/2 (+.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) (*.f64 -1/2 (+.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (/.f64 x.im y.im))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 y.re y.re) x.im) 1) (pow.f64 y.im 3)) (/.f64 x.im y.im))) |
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (fma.f64 -1 (*.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) 1) (/.f64 x.im y.im))) |
(-.f64 (+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 (pow.f64 y.re 2) x.im)) (*.f64 -1/2 (*.f64 (pow.f64 y.re 2) x.im))) (pow.f64 y.im 3))) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))) |
(+.f64 (+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 y.re y.re) x.im) 1) (pow.f64 y.im 3)) (/.f64 x.im y.im)) (*.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))) (*.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))) |
(+.f64 (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re) (+.f64 (fma.f64 -1 (*.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) 1) (/.f64 x.im y.im)) (-.f64 (*.f64 -1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (*.f64 1/2 (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2)))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (*.f64 (*.f64 y.re y.re) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) -1)))) |
(+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 y.re (*.f64 y.re (/.f64 (neg.f64 x.im) (pow.f64 y.im 3)))) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.re (pow.f64 y.im 4))) (*.f64 1/2 (/.f64 x.re (pow.f64 y.im 4)))) (pow.f64 y.re 3)) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 x.im (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 x.im (pow.f64 y.im 3)))) (pow.f64 y.re 2))))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (fma.f64 (*.f64 (/.f64 x.re (pow.f64 y.im 4)) -1) (pow.f64 y.re 3) (*.f64 (*.f64 y.re y.re) (*.f64 (/.f64 x.im (pow.f64 y.im 3)) -1))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re (*.f64 y.im y.im)) y.re)) (fma.f64 (/.f64 (neg.f64 x.re) (pow.f64 y.im 4)) (pow.f64 y.re 3) (*.f64 y.re (*.f64 y.re (/.f64 (neg.f64 x.im) (pow.f64 y.im 3)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3)))) |
(+.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)))) (/.f64 (*.f64 (*.f64 -1/2 x.re) (*.f64 y.im y.im)) (pow.f64 y.re 3))) |
(+.f64 (/.f64 (*.f64 (*.f64 y.im y.im) (*.f64 x.re -1/2)) (pow.f64 y.re 3)) (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)))) |
(-.f64 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.im 2)) (pow.f64 y.re 3))))) |
(-.f64 (fma.f64 -1/2 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)))))) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))))) |
(+.f64 (+.f64 (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) (*.f64 -1/2 (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))))) (*.f64 -1/2 (+.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3)))))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))))) |
(+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (neg.f64 (/.f64 (*.f64 (*.f64 x.re (*.f64 y.im y.im)) 1) (pow.f64 y.re 3))))) |
(+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (+.f64 (neg.f64 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im)))) (/.f64 x.re y.re))) |
(-.f64 (+.f64 (/.f64 x.re y.re) (+.f64 (/.f64 (*.f64 y.im x.im) (pow.f64 y.re 2)) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (*.f64 x.re (pow.f64 y.im 2))) (*.f64 -1/2 (*.f64 x.re (pow.f64 y.im 2)))) (pow.f64 y.re 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))))) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 3) x.im) (pow.f64 y.re 4)))) |
(+.f64 (/.f64 x.re y.re) (-.f64 (+.f64 (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 x.re (*.f64 y.im y.im)) 1) (pow.f64 y.re 3)) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im))))) (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (/.f64 (pow.f64 y.re 4) x.im))))) |
(+.f64 (/.f64 x.re y.re) (+.f64 (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im) (-.f64 (fma.f64 -1 (/.f64 x.re (/.f64 (pow.f64 y.re 3) (*.f64 y.im y.im))) (*.f64 -1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))))) (*.f64 1/2 (/.f64 x.im (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 3))))))) |
(/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) |
(/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) |
(/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(+.f64 (/.f64 (*.f64 y.im x.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (/.f64 (*.f64 x.re y.re) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 (/.f64 x.re (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) y.re)) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (*.f64 (/.f64 y.im (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) x.im)) |
(/.f64 y.im y.re) |
(+.f64 (/.f64 y.im y.re) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)))) |
(+.f64 (/.f64 y.im y.re) (/.f64 (*.f64 -1/2 (pow.f64 y.im 3)) (pow.f64 y.re 3))) |
(+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))))) |
(+.f64 (/.f64 y.im y.re) (fma.f64 3/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (/.f64 (*.f64 -1/2 (pow.f64 y.im 3)) (pow.f64 y.re 3)))) |
(+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 7))) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)))))) |
(+.f64 (/.f64 y.im y.re) (fma.f64 3/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (fma.f64 -5/16 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 7)) (/.f64 (*.f64 -1/2 (pow.f64 y.im 3)) (pow.f64 y.re 3))))) |
1 |
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 1 (/.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 4) -3/8) (pow.f64 y.im 4)) (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) -3/8)) (+.f64 1 (/.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.im 4))) (+.f64 1 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.re 4)) (*.f64 -1/8 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6))) (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 -1 (/.f64 (*.f64 (pow.f64 y.re 4) -3/8) (pow.f64 y.im 4)) (+.f64 1 (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (pow.f64 y.re 4) -3/8)) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6)) (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(fma.f64 -1 (/.f64 (pow.f64 y.re 4) (/.f64 (pow.f64 y.im 4) -3/8)) (+.f64 1 (fma.f64 -1 (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.re 6) -3/8) (*.f64 1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6)) (/.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
-1 |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) 1) |
(fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) -1) |
(fma.f64 1/2 (/.f64 y.re (/.f64 y.im (/.f64 y.re y.im))) -1) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))) (pow.f64 y.im 4)))) 1) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (neg.f64 (/.f64 (*.f64 (pow.f64 y.re 4) 3/8) (pow.f64 y.im 4)))) -1) |
(+.f64 -1 (fma.f64 1/2 (/.f64 y.re (/.f64 y.im (/.f64 y.re y.im))) (/.f64 (neg.f64 (*.f64 (pow.f64 y.re 4) 3/8)) (pow.f64 y.im 4)))) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))) (pow.f64 y.re 2))) (*.f64 -1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.re 4)) (*.f64 1/4 (pow.f64 y.re 4))) (pow.f64 y.im 4))))) 1) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) (*.f64 -1 (+.f64 (/.f64 (fma.f64 -1/2 (*.f64 (*.f64 y.re y.re) (*.f64 (pow.f64 y.re 4) 3/8)) (*.f64 -1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6)) (/.f64 (*.f64 (pow.f64 y.re 4) 3/8) (pow.f64 y.im 4))))) -1) |
(+.f64 (neg.f64 (+.f64 (/.f64 (fma.f64 -1/2 (*.f64 (pow.f64 y.re 6) 3/8) (*.f64 -1/8 (pow.f64 y.re 6))) (pow.f64 y.im 6)) (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))))) (fma.f64 1/2 (/.f64 y.re (/.f64 y.im (/.f64 y.re y.im))) -1)) |
1 |
(+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) |
(+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))) |
(+.f64 1 (/.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) |
(+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))) |
(fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (+.f64 1 (/.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(+.f64 (*.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 6))) (+.f64 (*.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4))) (+.f64 1 (*.f64 -1/2 (/.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (+.f64 1 (*.f64 -1/2 (/.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))))) |
(fma.f64 -5/16 (/.f64 (pow.f64 y.re 6) (pow.f64 y.im 6)) (fma.f64 3/8 (/.f64 (pow.f64 y.re 4) (pow.f64 y.im 4)) (+.f64 1 (/.f64 -1/2 (/.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))))) |
(/.f64 y.im y.re) |
(+.f64 (/.f64 y.im y.re) (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)))) |
(+.f64 (/.f64 y.im y.re) (/.f64 (*.f64 -1/2 (pow.f64 y.im 3)) (pow.f64 y.re 3))) |
(+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.re 5))))) |
(+.f64 (/.f64 y.im y.re) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (neg.f64 (/.f64 (*.f64 (pow.f64 y.im 5) -3/8) (pow.f64 y.re 5))))) |
(+.f64 (/.f64 y.im y.re) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (/.f64 (neg.f64 (*.f64 (pow.f64 y.im 5) -3/8)) (pow.f64 y.re 5)))) |
(+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (pow.f64 y.im 7)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.im 2)))) (pow.f64 y.re 7))) (+.f64 (/.f64 y.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.re 5)))))) |
(fma.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 y.im 7) (*.f64 -1/2 (*.f64 (*.f64 y.im y.im) (*.f64 (pow.f64 y.im 5) -3/8)))) (pow.f64 y.re 7)) (+.f64 (/.f64 y.im y.re) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (neg.f64 (/.f64 (*.f64 (pow.f64 y.im 5) -3/8) (pow.f64 y.re 5)))))) |
(fma.f64 -1 (/.f64 (fma.f64 1/8 (pow.f64 y.im 7) (*.f64 (*.f64 y.im y.im) (*.f64 -1/2 (*.f64 (pow.f64 y.im 5) -3/8)))) (pow.f64 y.re 7)) (+.f64 (/.f64 y.im y.re) (fma.f64 -1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (/.f64 (neg.f64 (*.f64 (pow.f64 y.im 5) -3/8)) (pow.f64 y.re 5))))) |
(*.f64 -1 (/.f64 y.im y.re)) |
(/.f64 (neg.f64 y.im) y.re) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (*.f64 -1 (/.f64 y.im y.re))) |
(fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (/.f64 (neg.f64 y.im) y.re)) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (*.f64 -1 (/.f64 y.im y.re))))) |
(fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (fma.f64 -1/4 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (fma.f64 -1/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (/.f64 (neg.f64 y.im) y.re)))) |
(+.f64 (*.f64 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) -3/8) (fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (/.f64 (neg.f64 y.im) y.re))) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 7))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1/4 (pow.f64 y.im 5)) (*.f64 -1/8 (pow.f64 y.im 5))) (pow.f64 y.im 2)) (pow.f64 y.re 7))) (*.f64 -1 (/.f64 y.im y.re))))))) |
(fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (fma.f64 -1/4 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (fma.f64 1/8 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 7)) (fma.f64 -1/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 5) -3/8) (/.f64 (pow.f64 y.re 7) (*.f64 y.im y.im))) (/.f64 (neg.f64 y.im) y.re)))))) |
(fma.f64 1/2 (/.f64 (pow.f64 y.im 3) (pow.f64 y.re 3)) (fma.f64 -1/4 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (fma.f64 1/8 (/.f64 (pow.f64 y.im 7) (pow.f64 y.re 7)) (fma.f64 -1/8 (/.f64 (pow.f64 y.im 5) (pow.f64 y.re 5)) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 (pow.f64 y.im 5) -3/8) (pow.f64 y.re 7)) (*.f64 y.im y.im)) (/.f64 (neg.f64 y.im) y.re)))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 y.re (/.f64 x.re (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 1 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 x.re) (/.f64 (*.f64 y.re (sqrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 x.re) (sqrt.f64 x.re))) |
(*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2) (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 (cbrt.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (*.f64 y.re (cbrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re (cbrt.f64 x.re)))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) y.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re y.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re 1) y.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (neg.f64 x.re) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) y.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (sqrt.f64 y.re)) (sqrt.f64 y.re)) |
(*.f64 (sqrt.f64 y.re) (/.f64 (*.f64 x.re (sqrt.f64 y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.re) (sqrt.f64 y.re))) |
(*.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) |
(*.f64 (cbrt.f64 y.re) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2)))) |
(/.f64 (*.f64 x.re (cbrt.f64 y.re)) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) |
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(/.f64 (*.f64 x.re (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 x.re (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 x.re 1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (*.f64 x.re (neg.f64 y.re))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 x.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (sqrt.f64 x.re) 1) y.re)) |
(*.f64 (sqrt.f64 x.re) (/.f64 (*.f64 y.re (sqrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 x.re) (sqrt.f64 x.re))) |
(*.f64 (/.f64 (sqrt.f64 x.re) 1) (*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) y.re)) |
(*.f64 (sqrt.f64 x.re) (/.f64 (*.f64 y.re (sqrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 x.re) (sqrt.f64 x.re))) |
(*.f64 (*.f64 (/.f64 (sqrt.f64 x.re) (hypot.f64 y.re y.im)) y.re) (sqrt.f64 x.re)) |
(*.f64 (sqrt.f64 x.re) (/.f64 (*.f64 y.re (sqrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 x.re) (sqrt.f64 x.re))) |
(*.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(/.f64 (*.f64 (sqrt.f64 x.re) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (hypot.f64 y.re y.im)) (*.f64 (/.f64 (cbrt.f64 x.re) 1) y.re)) |
(*.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (*.f64 y.re (cbrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re (cbrt.f64 x.re)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) 1) (*.f64 (/.f64 (cbrt.f64 x.re) (hypot.f64 y.re y.im)) y.re)) |
(*.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (*.f64 y.re (cbrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re (cbrt.f64 x.re)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (/.f64 (cbrt.f64 x.re) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) |
(*.f64 (cbrt.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) |
(*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 x.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 x.re -1) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (/.f64 x.re -1)) |
(/.f64 (*.f64 y.re (/.f64 x.re -1)) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) 1)) y.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (sqrt.f64 y.re) (/.f64 (*.f64 x.re (sqrt.f64 y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.re) (sqrt.f64 y.re))) |
(*.f64 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (cbrt.f64 y.re) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2)))) |
(/.f64 (*.f64 x.re (cbrt.f64 y.re)) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (sqrt.f64 x.re) y.re))) (sqrt.f64 x.re)) |
(*.f64 (sqrt.f64 x.re) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.re (sqrt.f64 x.re)))) |
(*.f64 (sqrt.f64 x.re) (*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 x.re))) y.re)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) y.re))) (cbrt.f64 x.re)) |
(*.f64 (cbrt.f64 x.re) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 y.re (cbrt.f64 (*.f64 x.re x.re))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (cbrt.f64 (*.f64 x.re x.re)) (*.f64 y.re (cbrt.f64 x.re)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (hypot.f64 y.re y.im) y.re)) (cbrt.f64 x.re)) |
(*.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (*.f64 y.re (cbrt.f64 x.re)) (hypot.f64 y.re y.im))) |
(/.f64 (cbrt.f64 (*.f64 x.re x.re)) (/.f64 (hypot.f64 y.re y.im) (*.f64 y.re (cbrt.f64 x.re)))) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) y.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) 1) (/.f64 y.re 1)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 1 (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (sqrt.f64 y.re) (/.f64 (*.f64 x.re (sqrt.f64 y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.re) (sqrt.f64 y.re))) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (cbrt.f64 y.re) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2)))) |
(/.f64 (*.f64 x.re (cbrt.f64 y.re)) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) |
(*.f64 (/.f64 (/.f64 x.re (hypot.f64 y.re y.im)) -1) (neg.f64 y.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (neg.f64 x.re) -1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (neg.f64 x.re) (hypot.f64 y.re y.im)) (neg.f64 y.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 x.re 1) 1) (/.f64 y.re (hypot.f64 y.re y.im))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 x.re 1) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.re (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re 1) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.re (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.re)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) 1)) y.re) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (sqrt.f64 y.re) (/.f64 (*.f64 x.re (sqrt.f64 y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (*.f64 (sqrt.f64 y.re) (sqrt.f64 y.re))) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (cbrt.f64 y.re) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2)))) |
(/.f64 (*.f64 x.re (cbrt.f64 y.re)) (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 y.re) 2))) |
(*.f64 (/.f64 (/.f64 x.re 1) -1) (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (neg.f64 (hypot.f64 y.re y.im))) (/.f64 x.re -1)) |
(/.f64 (*.f64 y.re (/.f64 x.re -1)) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) 1) (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(/.f64 (*.f64 x.re (sqrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 y.re)) |
(*.f64 (sqrt.f64 y.re) (/.f64 x.re (*.f64 (sqrt.f64 (hypot.f64 y.re y.im)) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))))) |
(*.f64 (sqrt.f64 y.re) (/.f64 (/.f64 x.re (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (sqrt.f64 (neg.f64 y.re))) |
(/.f64 (*.f64 (/.f64 x.re (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re))) (sqrt.f64 (neg.f64 y.re))) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (*.f64 (sqrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) (sqrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) (sqrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) 1) (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) (cbrt.f64 y.re)) |
(*.f64 (cbrt.f64 y.re) (/.f64 x.re (*.f64 (cbrt.f64 (hypot.f64 y.re y.im)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)))) |
(*.f64 (cbrt.f64 y.re) (/.f64 (/.f64 x.re (cbrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2)) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im)))) (cbrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2))) (cbrt.f64 (neg.f64 y.re))) |
(/.f64 (*.f64 (cbrt.f64 (neg.f64 y.re)) x.re) (*.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 y.re y.im) y.re)) 2) (cbrt.f64 (neg.f64 (hypot.f64 y.re y.im))))) |
(pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) 1/3) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (*.f64 x.re y.re)) -1) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(neg.f64 (*.f64 (/.f64 x.re (hypot.f64 y.re y.im)) (neg.f64 y.re))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (pow.f64 (exp.f64 x.re) (/.f64 y.re (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (log.f64 (exp.f64 x.re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(cbrt.f64 (/.f64 (pow.f64 x.re 3) (pow.f64 (/.f64 (hypot.f64 y.re y.im) y.re) 3))) |
(expm1.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1)) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 1 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) 1) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(+.f64 (neg.f64 (/.f64 (*.f64 x.im (neg.f64 y.im)) (hypot.f64 y.re y.im))) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (-.f64 1 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(-.f64 (+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(-.f64 (+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) 1) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 1 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2)) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (neg.f64 (neg.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))))) |
(*.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))))) |
(*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))))))) |
(*.f64 -1 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2)) (neg.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) |
(*.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))))) |
(*.f64 (neg.f64 (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))))) (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))))) |
(*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) (*.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))) (neg.f64 (cbrt.f64 (neg.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))))))) |
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (neg.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2))) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (-.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 2)) (-.f64 (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 2)) (-.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 3)) (+.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)) 3)) (fma.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im) (*.f64 x.re (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (fma.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im) (*.f64 x.re (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (-.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 3)) (*.f64 1 (+.f64 (*.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) 3) (pow.f64 (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)) 3)) (fma.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im) (*.f64 x.re (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))) 3)) (fma.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2) (*.f64 x.im x.im) (*.f64 x.re (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) (-.f64 (/.f64 (*.f64 x.re y.re) (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))))))) |
(pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 1) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(pow.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 3) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(pow.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) 1/3) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(neg.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(sqrt.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 2)) |
(sqrt.f64 (pow.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) 2)) |
(log.f64 (exp.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(cbrt.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3)) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(expm1.f64 (log1p.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(exp.f64 (log.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1)) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(log1p.f64 (expm1.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(+.f64 (*.f64 (*.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) y.im) 1) (/.f64 1 (hypot.f64 y.re y.im))) (*.f64 (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) 1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 1 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 1 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (*.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (*.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (cbrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 1) (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im)) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (cbrt.f64 (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im))))) 2) (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2) (cbrt.f64 (/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))))) (sqrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2))) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) 2) (hypot.f64 y.re y.im)) (cbrt.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 2) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 3) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 3) 1/3) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) -1) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(neg.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(neg.f64 (*.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))) 1)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(neg.f64 (*.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(neg.f64 (*.f64 1 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (neg.f64 (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(neg.f64 (/.f64 (neg.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) 3)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im))) 1)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (/.f64 (*.f64 y.im x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im)) (*.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)))) (hypot.f64 y.re y.im)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) 1) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 y.im (/.f64 1 (hypot.f64 y.re y.im))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 1) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 1 (/.f64 y.im (hypot.f64 y.re y.im))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 (sqrt.f64 y.im) (*.f64 (sqrt.f64 y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (sqrt.f64 y.im) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 y.im))) |
(*.f64 (sqrt.f64 y.im) (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2)) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 (cbrt.f64 y.im) (/.f64 1 (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 y.im))) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 (cbrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) y.im) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(*.f64 (neg.f64 y.im) (/.f64 1 (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 y.im) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 y.im (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 y.im (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (/.f64 (*.f64 1 y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))) (neg.f64 y.im)) |
(/.f64 (neg.f64 y.im) (neg.f64 (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 y.im) 1) (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (sqrt.f64 y.im) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 y.im))) |
(*.f64 (sqrt.f64 y.im) (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im)) (sqrt.f64 y.im)) |
(*.f64 (sqrt.f64 y.im) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 y.im))) |
(*.f64 (sqrt.f64 y.im) (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (sqrt.f64 y.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (/.f64 (sqrt.f64 y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (sqrt.f64 y.im) (/.f64 (sqrt.f64 y.im) (cbrt.f64 (hypot.f64 y.re y.im)))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) 1) (/.f64 (cbrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 y.im))) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 (cbrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (sqrt.f64 (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 y.im) (sqrt.f64 (hypot.f64 y.re y.im)))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2))) |
(/.f64 (*.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) (cbrt.f64 (*.f64 y.im y.im))) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(*.f64 (sqrt.f64 y.im) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (sqrt.f64 y.im))) |
(*.f64 (sqrt.f64 y.im) (/.f64 (sqrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (*.f64 y.im y.im)))) (cbrt.f64 y.im)) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 y.im))) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 (cbrt.f64 y.im) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (hypot.f64 y.re y.im)) (cbrt.f64 y.im)) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (cbrt.f64 y.im))) |
(*.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 (cbrt.f64 y.im) (hypot.f64 y.re y.im))) |
(pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 1) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 2) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(pow.f64 (cbrt.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 3) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 3) 1/3) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (hypot.f64 y.re y.im) y.im) -1) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(neg.f64 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 y.im) (neg.f64 (hypot.f64 y.re y.im))) |
(neg.f64 (*.f64 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im))) 1)) |
(/.f64 (neg.f64 y.im) (neg.f64 (hypot.f64 y.re y.im))) |
(neg.f64 (*.f64 y.im (/.f64 1 (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (neg.f64 y.im) (neg.f64 (hypot.f64 y.re y.im))) |
(neg.f64 (*.f64 1 (/.f64 y.im (neg.f64 (hypot.f64 y.re y.im))))) |
(/.f64 (neg.f64 y.im) (neg.f64 (hypot.f64 y.re y.im))) |
(neg.f64 (/.f64 (neg.f64 y.im) (hypot.f64 y.re y.im))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(sqrt.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 y.im (hypot.f64 y.re y.im))))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (/.f64 y.im (hypot.f64 y.re y.im)) 3)) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(cbrt.f64 (/.f64 (pow.f64 y.im 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(expm1.f64 (log1p.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (/.f64 y.im (hypot.f64 y.re y.im))) 1)) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 y.im (hypot.f64 y.re y.im)))) |
(/.f64 y.im (hypot.f64 y.re y.im)) |
Compiled 9 to 5 computations (44.4% saved)
Found 1 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| 95.5% | (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
Compiled 20 to 7 computations (65% saved)
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 95.9% | (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
| ✓ | 94.5% | (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
Compiled 35 to 9 computations (74.3% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y.im | @ | 0 | (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
| 1.0ms | y.re | @ | 0 | (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
| 1.0ms | y.re | @ | 0 | (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
| 1.0ms | y.re | @ | inf | (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
| 0.0ms | x.re | @ | 0 | (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
| 1× | batch-egg-rewrite |
| 622× | distribute-lft-neg-in |
| 584× | distribute-rgt-neg-in |
| 542× | distribute-rgt-in |
| 540× | associate-/r/ |
| 514× | distribute-lft-in |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 50 |
| 1 | 247 | 46 |
| 2 | 3775 | 46 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) 1) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 y.re (/.f64 (*.f64 y.im y.im) x.re)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 y.re (*.f64 (/.f64 y.im x.re) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 x.re (*.f64 (/.f64 y.im y.re) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 x.re (*.f64 y.im (/.f64 y.im y.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.re y.im) (/.f64 y.im y.re)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (*.f64 (/.f64 y.im y.re) (/.f64 y.im x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (*.f64 y.im y.im) (*.f64 y.re x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 x.re) (*.f64 (/.f64 y.im y.re) (/.f64 y.im (sqrt.f64 x.re)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 y.re) (*.f64 (/.f64 y.im x.re) (/.f64 y.im (sqrt.f64 y.re)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (/.f64 y.im y.re) (/.f64 y.im (cbrt.f64 x.re)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (/.f64 y.im x.re) (/.f64 y.im (cbrt.f64 y.re)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 y.re) (*.f64 (neg.f64 y.im) (/.f64 y.im x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 y.re) (*.f64 (/.f64 y.im x.re) (neg.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 x.re) (*.f64 (/.f64 y.im y.re) (neg.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 x.re) (*.f64 (neg.f64 y.im) (/.f64 y.im y.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 y.im (neg.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (*.f64 y.re x.re) (*.f64 (sqrt.f64 y.im) y.im)) (sqrt.f64 y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.re (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 y.im x.re))) (cbrt.f64 y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.re 1) (*.f64 (/.f64 y.im x.re) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.re (sqrt.f64 y.im)) (*.f64 (/.f64 y.im x.re) (sqrt.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 y.re (pow.f64 (cbrt.f64 y.im) 2)) (*.f64 (/.f64 y.im x.re) (cbrt.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.re 1) (*.f64 (/.f64 y.im y.re) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.re (sqrt.f64 y.im)) (*.f64 (/.f64 y.im y.re) (sqrt.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 y.im) 2)) (*.f64 (/.f64 y.im y.re) (cbrt.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (*.f64 (/.f64 y.im x.re) (/.f64 y.im (neg.f64 y.re)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 -1 (*.f64 (/.f64 y.im y.re) (/.f64 y.im (neg.f64 x.re)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (neg.f64 y.re) (neg.f64 x.re)) (*.f64 (neg.f64 y.im) (neg.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (neg.f64 x.re) (/.f64 y.im y.re)) (neg.f64 y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 1) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) 2) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 3) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re (neg.f64 y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 1)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) 1) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) (-.f64 1 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) (-.f64 1 (/.f64 x.im y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 x.im y.im) 2) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (exp.f64 (log1p.f64 (/.f64 x.im y.im)))) 1) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (/.f64 x.im y.im) (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)))) 1) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (*.f64 (/.f64 1 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.im) (+.f64 (*.f64 (/.f64 y.re y.im) x.re) x.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.im) (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 1 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (+.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 y.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 y.re x.re)))) (pow.f64 y.im 3)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 y.im (*.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 (/.f64 y.im x.im) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 y.im y.im) (*.f64 (/.f64 y.im x.im) (*.f64 y.re x.re)))) (*.f64 (/.f64 y.im x.im) (*.f64 y.im y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 (neg.f64 x.im) y.im) (*.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 y.im (neg.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 (neg.f64 x.im) (*.f64 y.im y.im)) (*.f64 (neg.f64 y.im) (*.f64 y.re x.re)))) (neg.f64 (pow.f64 y.im 3))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im)))))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (-.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (pow.f64 (/.f64 x.im y.im) 2))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) (*.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (-.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (pow.f64 (/.f64 x.im y.im) 3)))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) 3)) (*.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im) (*.f64 y.im x.im)) (*.f64 y.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 y.im (*.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 y.im x.im))) (*.f64 y.im (/.f64 y.im x.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.re y.im) x.re) (neg.f64 y.im)) (*.f64 y.im (neg.f64 x.im))) (*.f64 y.im (neg.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) y.im) (*.f64 (*.f64 y.im y.im) x.im)) (pow.f64 y.im 3)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.im y.im) 1) (*.f64 (*.f64 y.re x.re) (/.f64 y.im x.im))) (*.f64 (*.f64 y.im y.im) (/.f64 y.im x.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) (neg.f64 y.im)) (*.f64 (*.f64 y.im y.im) (neg.f64 x.im))) (neg.f64 (pow.f64 y.im 3))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 y.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 y.re x.re))) (pow.f64 y.im 3)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 y.im (*.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 (/.f64 y.im x.im) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 (/.f64 y.im x.im) (*.f64 y.re x.re))) (*.f64 (/.f64 y.im x.im) (*.f64 y.im y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.im) y.im) (*.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 y.im (neg.f64 y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (*.f64 (neg.f64 x.im) (*.f64 y.im y.im)) (*.f64 (neg.f64 y.im) (*.f64 y.re x.re))) (neg.f64 (pow.f64 y.im 3))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 x.im y.im) 2)) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (neg.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 3) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3) 1/3) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (neg.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 2)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 1)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 x.im (/.f64 1 y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) (/.f64 x.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 2) (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) (/.f64 x.im y.im)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) #(struct:egraph-query ((*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 914× | distribute-lft-neg-in |
| 830× | distribute-rgt-neg-in |
| 600× | associate-*r* |
| 552× | distribute-lft-neg-out |
| 542× | distribute-rgt-neg-out |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 361 | 7771 |
| 1 | 1072 | 7157 |
| 2 | 4883 | 7131 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) 1) |
(/.f64 y.re (/.f64 (*.f64 y.im y.im) x.re)) |
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))) |
(/.f64 y.re (*.f64 (/.f64 y.im x.re) y.im)) |
(/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)) |
(/.f64 x.re (*.f64 (/.f64 y.im y.re) y.im)) |
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re))) |
(/.f64 (/.f64 x.re y.im) (/.f64 y.im y.re)) |
(/.f64 1 (*.f64 (/.f64 y.im y.re) (/.f64 y.im x.re))) |
(/.f64 1 (/.f64 (*.f64 y.im y.im) (*.f64 y.re x.re))) |
(/.f64 (sqrt.f64 x.re) (*.f64 (/.f64 y.im y.re) (/.f64 y.im (sqrt.f64 x.re)))) |
(/.f64 (sqrt.f64 y.re) (*.f64 (/.f64 y.im x.re) (/.f64 y.im (sqrt.f64 y.re)))) |
(/.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (/.f64 y.im y.re) (/.f64 y.im (cbrt.f64 x.re)))) |
(/.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (/.f64 y.im x.re) (/.f64 y.im (cbrt.f64 y.re)))) |
(/.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(/.f64 (neg.f64 y.re) (*.f64 (neg.f64 y.im) (/.f64 y.im x.re))) |
(/.f64 (neg.f64 y.re) (*.f64 (/.f64 y.im x.re) (neg.f64 y.im))) |
(/.f64 (neg.f64 x.re) (*.f64 (/.f64 y.im y.re) (neg.f64 y.im))) |
(/.f64 (neg.f64 x.re) (*.f64 (neg.f64 y.im) (/.f64 y.im y.re))) |
(/.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (/.f64 (*.f64 y.re x.re) (*.f64 (sqrt.f64 y.im) y.im)) (sqrt.f64 y.im)) |
(/.f64 (/.f64 y.re (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 y.im x.re))) (cbrt.f64 y.im)) |
(/.f64 (/.f64 y.re 1) (*.f64 (/.f64 y.im x.re) y.im)) |
(/.f64 (/.f64 y.re (sqrt.f64 y.im)) (*.f64 (/.f64 y.im x.re) (sqrt.f64 y.im))) |
(/.f64 (/.f64 y.re (pow.f64 (cbrt.f64 y.im) 2)) (*.f64 (/.f64 y.im x.re) (cbrt.f64 y.im))) |
(/.f64 (/.f64 x.re 1) (*.f64 (/.f64 y.im y.re) y.im)) |
(/.f64 (/.f64 x.re (sqrt.f64 y.im)) (*.f64 (/.f64 y.im y.re) (sqrt.f64 y.im))) |
(/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 y.im) 2)) (*.f64 (/.f64 y.im y.re) (cbrt.f64 y.im))) |
(/.f64 -1 (*.f64 (/.f64 y.im x.re) (/.f64 y.im (neg.f64 y.re)))) |
(/.f64 -1 (*.f64 (/.f64 y.im y.re) (/.f64 y.im (neg.f64 x.re)))) |
(/.f64 (*.f64 (neg.f64 y.re) (neg.f64 x.re)) (*.f64 (neg.f64 y.im) (neg.f64 y.im))) |
(/.f64 (/.f64 (neg.f64 x.re) (/.f64 y.im y.re)) (neg.f64 y.im)) |
(pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 1) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) 2) |
(pow.f64 (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 3) |
(pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) 1/3) |
(neg.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re (neg.f64 y.im)))) |
(neg.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 y.im)))) |
(sqrt.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) |
(log.f64 (exp.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)))) |
(cbrt.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) |
(expm1.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(exp.f64 (log.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 1)) |
(log1p.f64 (expm1.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) 1) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) (-.f64 1 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) (-.f64 1 (/.f64 x.im y.im))) |
(-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 x.im y.im) 2) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) |
(-.f64 (+.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (exp.f64 (log1p.f64 (/.f64 x.im y.im)))) 1) |
(-.f64 (+.f64 (/.f64 x.im y.im) (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)))) 1) |
(*.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1) |
(*.f64 1 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) |
(*.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(*.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(*.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (*.f64 (/.f64 1 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) |
(*.f64 (/.f64 1 y.im) (+.f64 (*.f64 (/.f64 y.re y.im) x.re) x.im)) |
(*.f64 (/.f64 1 y.im) (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) |
(*.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) |
(*.f64 (*.f64 (/.f64 1 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) |
(*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (+.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 y.im y.im)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 y.re x.re)))) (pow.f64 y.im 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 y.im (*.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 (/.f64 y.im x.im) y.im)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 y.im y.im) (*.f64 (/.f64 y.im x.im) (*.f64 y.re x.re)))) (*.f64 (/.f64 y.im x.im) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 (neg.f64 x.im) y.im) (*.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 y.im (neg.f64 y.im))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 (neg.f64 x.im) (*.f64 y.im y.im)) (*.f64 (neg.f64 y.im) (*.f64 y.re x.re)))) (neg.f64 (pow.f64 y.im 3))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im)))))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (-.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (pow.f64 (/.f64 x.im y.im) 2))))) |
(/.f64 1 (/.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)))) |
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) (*.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (-.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (pow.f64 (/.f64 x.im y.im) 3)))))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) 3)) (*.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)))))) |
(/.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im) (*.f64 y.im x.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 y.im (*.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 y.im x.im))) (*.f64 y.im (/.f64 y.im x.im))) |
(/.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.re y.im) x.re) (neg.f64 y.im)) (*.f64 y.im (neg.f64 x.im))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) y.im) (*.f64 (*.f64 y.im y.im) x.im)) (pow.f64 y.im 3)) |
(/.f64 (+.f64 (*.f64 (*.f64 y.im y.im) 1) (*.f64 (*.f64 y.re x.re) (/.f64 y.im x.im))) (*.f64 (*.f64 y.im y.im) (/.f64 y.im x.im))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) (neg.f64 y.im)) (*.f64 (*.f64 y.im y.im) (neg.f64 x.im))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 y.re x.re))) (pow.f64 y.im 3)) |
(/.f64 (+.f64 y.im (*.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 (/.f64 y.im x.im) y.im)) |
(/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 (/.f64 y.im x.im) (*.f64 y.re x.re))) (*.f64 (/.f64 y.im x.im) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) y.im) (*.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (*.f64 y.im y.im)) (*.f64 (neg.f64 y.im) (*.f64 y.re x.re))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 x.im y.im) 2)) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (neg.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) |
(pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1) |
(pow.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2) |
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 3) |
(pow.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3) 1/3) |
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (neg.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im))) |
(neg.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))))) |
(sqrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 2)) |
(log.f64 (exp.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))) |
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(exp.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 1)) |
(log1p.f64 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im)) |
(fma.f64 x.im (/.f64 1 y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
(fma.f64 1 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im)) |
(fma.f64 1 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
(fma.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) (/.f64 x.im y.im)) |
(fma.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 2) (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) (/.f64 x.im y.im)) |
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
| Outputs |
|---|
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) 1) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 y.re (/.f64 (*.f64 y.im y.im) x.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 y.re (*.f64 y.im (/.f64 y.im x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 y.re (*.f64 (/.f64 y.im x.re) y.im)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (/.f64 y.re y.im) (/.f64 y.im x.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 x.re (*.f64 (/.f64 y.im y.re) y.im)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 x.re (*.f64 y.im (/.f64 y.im y.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (/.f64 x.re y.im) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 1 (*.f64 (/.f64 y.im y.re) (/.f64 y.im x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 1 (/.f64 (*.f64 y.im y.im) (*.f64 y.re x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (sqrt.f64 x.re) (*.f64 (/.f64 y.im y.re) (/.f64 y.im (sqrt.f64 x.re)))) |
(/.f64 (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re)) (/.f64 y.im (sqrt.f64 x.re))) |
(*.f64 (/.f64 (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re)) y.im) (sqrt.f64 x.re)) |
(/.f64 (sqrt.f64 y.re) (*.f64 (/.f64 y.im x.re) (/.f64 y.im (sqrt.f64 y.re)))) |
(/.f64 (sqrt.f64 y.re) (/.f64 (/.f64 y.im (/.f64 x.re y.im)) (sqrt.f64 y.re))) |
(*.f64 (/.f64 (sqrt.f64 y.re) (/.f64 y.im (/.f64 x.re y.im))) (sqrt.f64 y.re)) |
(/.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (/.f64 y.im y.re) (/.f64 y.im (cbrt.f64 x.re)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 y.im (/.f64 y.im y.re))) (cbrt.f64 x.re)) |
(/.f64 (pow.f64 (cbrt.f64 y.re) 2) (*.f64 (/.f64 y.im x.re) (/.f64 y.im (cbrt.f64 y.re)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 y.re) 2) (/.f64 y.im (/.f64 x.re y.im))) (cbrt.f64 y.re)) |
(/.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (neg.f64 y.re) (*.f64 (neg.f64 y.im) (/.f64 y.im x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (neg.f64 y.re) (*.f64 (/.f64 y.im x.re) (neg.f64 y.im))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.re) (*.f64 (/.f64 y.im y.re) (neg.f64 y.im))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.re) (*.f64 (neg.f64 y.im) (/.f64 y.im y.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 y.im (neg.f64 y.im))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (/.f64 (*.f64 y.re x.re) (*.f64 (sqrt.f64 y.im) y.im)) (sqrt.f64 y.im)) |
(/.f64 (*.f64 (/.f64 y.re (sqrt.f64 y.im)) (/.f64 x.re y.im)) (sqrt.f64 y.im)) |
(/.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(/.f64 (/.f64 y.re (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (/.f64 y.im x.re))) (cbrt.f64 y.im)) |
(/.f64 y.re (*.f64 (*.f64 (/.f64 y.im x.re) (cbrt.f64 y.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(/.f64 y.re (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (/.f64 y.im x.re) (cbrt.f64 y.im)))) |
(/.f64 (/.f64 y.re 1) (*.f64 (/.f64 y.im x.re) y.im)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (/.f64 y.re (sqrt.f64 y.im)) (*.f64 (/.f64 y.im x.re) (sqrt.f64 y.im))) |
(/.f64 (*.f64 (/.f64 y.re (sqrt.f64 y.im)) (/.f64 x.re y.im)) (sqrt.f64 y.im)) |
(/.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(/.f64 (/.f64 y.re (pow.f64 (cbrt.f64 y.im) 2)) (*.f64 (/.f64 y.im x.re) (cbrt.f64 y.im))) |
(/.f64 y.re (*.f64 (*.f64 (/.f64 y.im x.re) (cbrt.f64 y.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(/.f64 y.re (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (/.f64 y.im x.re) (cbrt.f64 y.im)))) |
(/.f64 (/.f64 x.re 1) (*.f64 (/.f64 y.im y.re) y.im)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (/.f64 x.re (sqrt.f64 y.im)) (*.f64 (/.f64 y.im y.re) (sqrt.f64 y.im))) |
(/.f64 (*.f64 (/.f64 y.re (sqrt.f64 y.im)) (/.f64 x.re y.im)) (sqrt.f64 y.im)) |
(/.f64 (*.f64 (/.f64 x.re y.im) (/.f64 y.re (sqrt.f64 y.im))) (sqrt.f64 y.im)) |
(/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 y.im) 2)) (*.f64 (/.f64 y.im y.re) (cbrt.f64 y.im))) |
(/.f64 x.re (*.f64 (*.f64 (/.f64 y.im y.re) (cbrt.f64 y.im)) (pow.f64 (cbrt.f64 y.im) 2))) |
(/.f64 x.re (*.f64 (pow.f64 (cbrt.f64 y.im) 2) (*.f64 (/.f64 y.im y.re) (cbrt.f64 y.im)))) |
(/.f64 -1 (*.f64 (/.f64 y.im x.re) (/.f64 y.im (neg.f64 y.re)))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 -1 (*.f64 (/.f64 y.im y.re) (/.f64 y.im (neg.f64 x.re)))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (*.f64 (neg.f64 y.re) (neg.f64 x.re)) (*.f64 (neg.f64 y.im) (neg.f64 y.im))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(/.f64 (/.f64 (neg.f64 x.re) (/.f64 y.im y.re)) (neg.f64 y.im)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 1) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) 2) |
(pow.f64 (/.f64 (sqrt.f64 (*.f64 x.re y.re)) y.im) 2) |
(pow.f64 (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 3) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) 1/3) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(neg.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re (neg.f64 y.im)))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(neg.f64 (/.f64 (*.f64 y.re x.re) (*.f64 y.im (neg.f64 y.im)))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(sqrt.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) |
(sqrt.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) |
(fabs.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im)))) |
(log.f64 (exp.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(cbrt.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(expm1.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(exp.f64 (log.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 1)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(log1p.f64 (expm1.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) 1) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) (-.f64 1 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) 1) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (expm1.f64 (log1p.f64 (/.f64 x.im y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re))) (-.f64 1 (/.f64 x.im y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 x.im y.im) 2) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) (*.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(-.f64 (+.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (exp.f64 (log1p.f64 (/.f64 x.im y.im)))) 1) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 (/.f64 x.im y.im))) 1) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(fma.f64 x.re (/.f64 y.re (*.f64 y.im y.im)) (expm1.f64 (log1p.f64 (/.f64 x.im y.im)))) |
(-.f64 (+.f64 (/.f64 x.im y.im) (exp.f64 (log1p.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)))) 1) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 1 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2) (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (*.f64 (/.f64 1 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 (/.f64 1 y.im) (+.f64 (*.f64 (/.f64 y.re y.im) x.re) x.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (/.f64 1 y.im) (+.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2))) |
(*.f64 (*.f64 (/.f64 1 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 (/.f64 1 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (+.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3))) (+.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (*.f64 x.re (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3)) (fma.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) (pow.f64 (/.f64 x.im y.im) 2)))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 y.im y.im)) |
(*.f64 (*.f64 y.im y.im) (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 (*.f64 y.im x.im) (*.f64 y.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (*.f64 (*.f64 y.im y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2))) (*.f64 y.im (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 y.re x.re)))) (pow.f64 y.im 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 (*.f64 y.im (*.f64 y.im x.im)) (*.f64 y.re (*.f64 x.re y.im)))) (pow.f64 y.im 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (*.f64 y.im (-.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)))) (pow.f64 y.im 3)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 y.im (*.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 (/.f64 y.im x.im) y.im)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 y.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (/.f64 y.im x.im)))) (*.f64 y.im (/.f64 y.im x.im))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 y.im (*.f64 (/.f64 y.re y.im) (/.f64 (*.f64 x.re y.im) x.im)))) (*.f64 y.im (/.f64 y.im x.im))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 y.im y.im) (*.f64 (/.f64 y.im x.im) (*.f64 y.re x.re)))) (*.f64 (/.f64 y.im x.im) (*.f64 y.im y.im))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 (*.f64 y.im y.im) (*.f64 y.re (*.f64 x.re (/.f64 y.im x.im))))) (/.f64 (pow.f64 y.im 3) x.im)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 (*.f64 y.im y.im) (*.f64 y.re (/.f64 (*.f64 x.re y.im) x.im)))) (/.f64 (pow.f64 y.im 3) x.im)) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 (neg.f64 x.im) y.im) (*.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re y.im) x.re)))) (*.f64 y.im (neg.f64 y.im))) |
(*.f64 (*.f64 y.im (neg.f64 y.im)) (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 y.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(*.f64 (neg.f64 y.im) (/.f64 (*.f64 y.im (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2))) (*.f64 y.im (+.f64 (neg.f64 x.im) (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (*.f64 (*.f64 y.im y.im) (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2))) (*.f64 y.im (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (-.f64 (*.f64 (neg.f64 x.im) (*.f64 y.im y.im)) (*.f64 (neg.f64 y.im) (*.f64 y.re x.re)))) (neg.f64 (pow.f64 y.im 3))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (+.f64 (*.f64 y.im (*.f64 y.im (neg.f64 x.im))) (*.f64 y.re (*.f64 x.re y.im)))) (neg.f64 (pow.f64 y.im 3))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (*.f64 y.im (+.f64 (*.f64 y.im (neg.f64 x.im)) (*.f64 x.re y.re)))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (*.f64 (pow.f64 y.im 3) (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2))) (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 y.im (neg.f64 x.im))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im)))))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3)) (-.f64 (pow.f64 (/.f64 x.im y.im) 4) (*.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im)) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im)))))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (*.f64 x.re (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im)))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (-.f64 (pow.f64 (/.f64 x.im y.im) 4) (*.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (*.f64 (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im)) (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im)))))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 x.re (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im)))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (-.f64 (pow.f64 (/.f64 x.im y.im) 4) (*.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (*.f64 (/.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)) y.im) (/.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)) y.im))))) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (*.f64 x.re (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)) y.im))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) 3))) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (-.f64 (*.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) (pow.f64 (/.f64 x.im y.im) 2))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3)) (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (*.f64 x.re (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im)))) 3))) (+.f64 (pow.f64 (/.f64 x.im y.im) 4) (*.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (*.f64 (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im)) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (*.f64 x.re (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im)))) (pow.f64 (/.f64 x.im y.im) 2)))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (*.f64 (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im)) (fma.f64 (/.f64 y.re (*.f64 y.im y.im)) (*.f64 x.re (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im))) (neg.f64 (pow.f64 (/.f64 x.im y.im) 2)))) (pow.f64 (/.f64 x.im y.im) 4))) (+.f64 (pow.f64 (*.f64 x.re (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im)))) 3) (pow.f64 (/.f64 x.im y.im) 6))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (*.f64 (/.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)) y.im) (fma.f64 (/.f64 y.re (*.f64 y.im y.im)) (*.f64 x.re (/.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)) y.im)) (neg.f64 (pow.f64 (/.f64 x.im y.im) 2)))) (pow.f64 (/.f64 x.im y.im) 4))) (+.f64 (pow.f64 (*.f64 x.re (*.f64 (/.f64 y.re (*.f64 y.im y.im)) (/.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)) y.im))) 3) (pow.f64 (/.f64 x.im y.im) 6))) |
(/.f64 1 (/.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3)) 1) (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 6) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 6)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im))) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3)))) |
(/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 6) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 6)) (*.f64 (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (-.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)))) |
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2))) (*.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 4) (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 4)) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im)) (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (pow.f64 (/.f64 x.im y.im) 2))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 4) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 4)) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im)) (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (/.f64 x.im y.im) 3)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (-.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3) (pow.f64 (/.f64 x.im y.im) 3)))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) 3)) (*.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im))) (+.f64 (pow.f64 (/.f64 x.im y.im) 6) (*.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (-.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3)))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 3) 3) (pow.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) 3)) (*.f64 (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)) (fma.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (pow.f64 (/.f64 x.im y.im) 6)))) |
(/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) 3)) (*.f64 (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im) (+.f64 (*.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (/.f64 x.im y.im) 2)) (*.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (pow.f64 (/.f64 x.im y.im) 2)))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 (pow.f64 (/.f64 x.im y.im) 2) 3) (pow.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) 3)) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im)) (+.f64 (pow.f64 (/.f64 x.im y.im) 4) (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 4) (*.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (pow.f64 (/.f64 x.im y.im) 2))))) |
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 6) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 6)) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (fma.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (pow.f64 (/.f64 x.im y.im) 4)))) y.im) |
(/.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.re y.im) x.re) y.im) (*.f64 y.im x.im)) (*.f64 y.im y.im)) |
(/.f64 (fma.f64 x.im y.im (*.f64 y.im (*.f64 x.re (/.f64 y.re y.im)))) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im (fma.f64 x.re (/.f64 y.re y.im) x.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 y.im (*.f64 (*.f64 (/.f64 y.re y.im) x.re) (/.f64 y.im x.im))) (*.f64 y.im (/.f64 y.im x.im))) |
(/.f64 (+.f64 y.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (/.f64 y.im x.im))) (*.f64 y.im (/.f64 y.im x.im))) |
(*.f64 (/.f64 (/.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 (*.f64 x.re y.im) x.im) y.im) y.im) y.im) x.im) |
(/.f64 (+.f64 (*.f64 (*.f64 (/.f64 y.re y.im) x.re) (neg.f64 y.im)) (*.f64 y.im (neg.f64 x.im))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (fma.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 y.im) (*.f64 y.im (neg.f64 x.im))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (neg.f64 (*.f64 y.im (fma.f64 x.re (/.f64 y.re y.im) x.im))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (*.f64 (neg.f64 y.im) (fma.f64 x.re (/.f64 y.re y.im) x.im)) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) y.im) (*.f64 (*.f64 y.im y.im) x.im)) (pow.f64 y.im 3)) |
(/.f64 (fma.f64 (*.f64 x.re y.re) y.im (*.f64 y.im (*.f64 y.im x.im))) (pow.f64 y.im 3)) |
(/.f64 (*.f64 y.im (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))) (pow.f64 y.im 3)) |
(/.f64 (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (pow.f64 y.im 3)) |
(/.f64 (+.f64 (*.f64 (*.f64 y.im y.im) 1) (*.f64 (*.f64 y.re x.re) (/.f64 y.im x.im))) (*.f64 (*.f64 y.im y.im) (/.f64 y.im x.im))) |
(/.f64 (fma.f64 y.im y.im (*.f64 y.re (*.f64 x.re (/.f64 y.im x.im)))) (/.f64 (pow.f64 y.im 3) x.im)) |
(/.f64 (fma.f64 y.re (/.f64 (*.f64 x.re y.im) x.im) (*.f64 y.im y.im)) (/.f64 (pow.f64 y.im 3) x.im)) |
(/.f64 (+.f64 (*.f64 (*.f64 y.re x.re) (neg.f64 y.im)) (*.f64 (*.f64 y.im y.im) (neg.f64 x.im))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (fma.f64 (*.f64 x.re y.re) (neg.f64 y.im) (*.f64 y.im (*.f64 y.im (neg.f64 x.im)))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (neg.f64 (*.f64 y.im (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (*.f64 y.im (-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 y.im x.im))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (+.f64 (*.f64 x.im y.im) (*.f64 y.im (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 y.im y.im)) |
(/.f64 (fma.f64 x.im y.im (*.f64 y.im (*.f64 x.re (/.f64 y.re y.im)))) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im (fma.f64 x.re (/.f64 y.re y.im) x.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.im (*.f64 y.im y.im)) (*.f64 y.im (*.f64 y.re x.re))) (pow.f64 y.im 3)) |
(/.f64 (fma.f64 (*.f64 x.re y.re) y.im (*.f64 y.im (*.f64 y.im x.im))) (pow.f64 y.im 3)) |
(/.f64 (*.f64 y.im (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re))) (pow.f64 y.im 3)) |
(/.f64 (*.f64 y.im (+.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))) (pow.f64 y.im 3)) |
(/.f64 (+.f64 y.im (*.f64 (/.f64 y.im x.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 (/.f64 y.im x.im) y.im)) |
(/.f64 (+.f64 y.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (/.f64 y.im x.im))) (*.f64 y.im (/.f64 y.im x.im))) |
(*.f64 (/.f64 (/.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 (*.f64 x.re y.im) x.im) y.im) y.im) y.im) x.im) |
(/.f64 (+.f64 (*.f64 y.im y.im) (*.f64 (/.f64 y.im x.im) (*.f64 y.re x.re))) (*.f64 (/.f64 y.im x.im) (*.f64 y.im y.im))) |
(/.f64 (fma.f64 y.im y.im (*.f64 y.re (*.f64 x.re (/.f64 y.im x.im)))) (/.f64 (pow.f64 y.im 3) x.im)) |
(/.f64 (fma.f64 y.re (/.f64 (*.f64 x.re y.im) x.im) (*.f64 y.im y.im)) (/.f64 (pow.f64 y.im 3) x.im)) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) y.im) (*.f64 (neg.f64 y.im) (*.f64 (/.f64 y.re y.im) x.re))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (fma.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 y.im) (*.f64 y.im (neg.f64 x.im))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (neg.f64 (*.f64 y.im (fma.f64 x.re (/.f64 y.re y.im) x.im))) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (*.f64 (neg.f64 y.im) (fma.f64 x.re (/.f64 y.re y.im) x.im)) (*.f64 y.im (neg.f64 y.im))) |
(/.f64 (+.f64 (*.f64 (neg.f64 x.im) (*.f64 y.im y.im)) (*.f64 (neg.f64 y.im) (*.f64 y.re x.re))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (fma.f64 (*.f64 x.re y.re) (neg.f64 y.im) (*.f64 y.im (*.f64 y.im (neg.f64 x.im)))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (neg.f64 (*.f64 y.im (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (*.f64 y.im (-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 y.im x.im))) (neg.f64 (pow.f64 y.im 3))) |
(/.f64 (+.f64 (neg.f64 (pow.f64 (/.f64 x.im y.im) 2)) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (neg.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im)) |
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im))))) |
(*.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)))) |
(pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 1) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(pow.f64 (sqrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 2) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 3) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(pow.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3) 1/3) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 x.im y.im) 2) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2)) (/.f64 (neg.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re))) y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) (/.f64 x.im y.im))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (-.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) (/.f64 x.im y.im))) |
(*.f64 y.im (/.f64 (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2) (pow.f64 (/.f64 x.im y.im) 2)) (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (neg.f64 x.im)))) |
(neg.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.im y.im) 3) (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 3)) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 (/.f64 y.re y.im) x.re)) y.im)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 3) (pow.f64 (/.f64 x.im y.im) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) 2) (*.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im))))) |
(*.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 3) (pow.f64 (/.f64 x.im y.im) 3)) (fma.f64 (/.f64 x.im y.im) (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) y.im) (pow.f64 (*.f64 y.re (/.f64 x.re (*.f64 y.im y.im))) 2)))) |
(sqrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 2)) |
(fabs.f64 (/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im)) |
(log.f64 (exp.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) 3)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(expm1.f64 (log1p.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(exp.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im))) 1)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(log1p.f64 (expm1.f64 (fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)))) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 (/.f64 x.re y.im) (/.f64 y.re y.im) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 x.im (/.f64 1 y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 1 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 1 (/.f64 x.im y.im) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) (/.f64 (sqrt.f64 (*.f64 y.re x.re)) y.im) (/.f64 x.im y.im)) |
(+.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 x.re y.re)) y.im) 2) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (pow.f64 (/.f64 (sqrt.f64 (*.f64 x.re y.re)) y.im) 2)) |
(fma.f64 (sqrt.f64 (/.f64 x.im y.im)) (sqrt.f64 (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) 2) (cbrt.f64 (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) (/.f64 x.im y.im)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
(fma.f64 (pow.f64 (cbrt.f64 (/.f64 x.im y.im)) 2) (cbrt.f64 (/.f64 x.im y.im)) (*.f64 (/.f64 y.re (*.f64 y.im y.im)) x.re)) |
(fma.f64 (/.f64 y.re y.im) (/.f64 x.re y.im) (/.f64 x.im y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) y.im) |
Found 4 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) |
| 100.0% | (/.f64 1 (hypot.f64 y.re y.im)) | |
| ✓ | 90.5% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
| ✓ | 89.9% | (/.f64 x.re (/.f64 y.im y.re)) |
Compiled 45 to 14 computations (68.9% saved)
33 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y.re | @ | -inf | (/.f64 x.re (/.f64 y.im y.re)) |
| 1.0ms | x.re | @ | 0 | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
| 1.0ms | y.re | @ | 0 | (/.f64 x.re (/.f64 y.im y.re)) |
| 1.0ms | y.re | @ | -inf | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
| 1.0ms | x.im | @ | 0 | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
| 1× | batch-egg-rewrite |
| 988× | associate-/r/ |
| 766× | distribute-rgt-in |
| 728× | distribute-lft-in |
| 556× | associate-/l/ |
| 302× | add-sqr-sqrt |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 63 |
| 1 | 288 | 55 |
| 2 | 4210 | 55 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) |
| Outputs |
|---|
(((-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 x.re (/.f64 y.re y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 y.re (/.f64 x.re y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 x.re (/.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (*.f64 x.re (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re y.im) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 y.re y.im) x.re) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (neg.f64 x.re) (*.f64 -1 (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.re y.im) 1) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.re y.im) (sqrt.f64 y.re)) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 (/.f64 x.re y.im) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.im) (*.f64 x.re y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 y.im) (*.f64 (/.f64 x.re 1) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (/.f64 x.re (cbrt.f64 (/.f64 y.im y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re 1) (/.f64 y.re y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (sqrt.f64 y.im)) (/.f64 y.re (sqrt.f64 y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (/.f64 y.re (cbrt.f64 y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (neg.f64 y.im)) (*.f64 x.re (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (neg.f64 y.im)) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (*.f64 -1 (/.f64 y.re y.im)) (neg.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.re) 1) (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.re) y.im) (*.f64 (/.f64 (sqrt.f64 x.re) 1) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) 1) (*.f64 (/.f64 (cbrt.f64 x.re) y.im) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re)) (sqrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (/.f64 y.im y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) y.im) (*.f64 (/.f64 (cbrt.f64 x.re) 1) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (sqrt.f64 (/.f64 y.im y.re))) (/.f64 (cbrt.f64 x.re) (sqrt.f64 (/.f64 y.im y.re)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re -1) (neg.f64 (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (neg.f64 (neg.f64 y.im))) (neg.f64 (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (/.f64 y.im 1)) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (/.f64 y.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 x.re (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 y.im (*.f64 (sqrt.f64 x.re) y.re))) (sqrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (/.f64 y.im (*.f64 (pow.f64 (cbrt.f64 x.re) 2) y.re))) (cbrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (/.f64 y.im y.re)) (cbrt.f64 x.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re y.im) 1) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re y.im) 1) (/.f64 y.re 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re y.im) -1) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re y.im) (/.f64 1 (sqrt.f64 y.re))) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re y.im) (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (neg.f64 x.re) -1) (/.f64 y.re y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (neg.f64 x.re) (neg.f64 (neg.f64 y.im))) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) 1) (/.f64 y.re y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (sqrt.f64 y.im)) (/.f64 y.re (sqrt.f64 y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (cbrt.f64 (*.f64 y.im y.im))) (/.f64 y.re (cbrt.f64 y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 y.im)) (neg.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) -1) (neg.f64 (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im 1)) y.re) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 (neg.f64 y.im))) (neg.f64 (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) 1) (sqrt.f64 (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 y.im)) (sqrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 (neg.f64 y.im))) (sqrt.f64 (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) 1) (cbrt.f64 (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 y.im)) (cbrt.f64 y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 (neg.f64 y.im))) (cbrt.f64 (neg.f64 y.re))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) 2) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) 3) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 y.im (*.f64 x.re y.re)) -1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((neg.f64 (*.f64 (/.f64 x.re (neg.f64 y.im)) y.re)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (pow.f64 (exp.f64 x.re) (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (*.f64 x.re (/.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((+.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.im (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 x.re y.im) y.re x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) (sqrt.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (sqrt.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) (sqrt.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) -1) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) (-.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (+.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (+.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) 3)) (-.f64 (+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (+.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 -1 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) 1) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) -1) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) 1) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) -1) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (neg.f64 (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (neg.f64 (hypot.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 2) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 3) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 3) 1/3) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 3)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (/.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 x.im (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
(((-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) (-.f64 1 x.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (exp.f64 (log1p.f64 x.im)) (-.f64 1 (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (/.f64 (*.f64 x.im x.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (/.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (exp.f64 (log1p.f64 x.im))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((-.f64 (+.f64 x.im (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im))))) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 1 (fma.f64 (/.f64 x.re y.im) y.re x.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (/.f64 1 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (/.f64 1 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 1 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (fma.f64 (/.f64 x.re y.im) y.re x.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (+.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (fma.f64 (/.f64 x.re y.im) y.re x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) (-.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((*.f64 (/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (+.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) 3))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (-.f64 (*.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (*.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (/.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (*.f64 1 (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 1 (*.f64 1 (/.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 1 (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (+.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 3)) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (-.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) 3)) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (+.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 1 (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 1 (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 3) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((pow.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) 1/3) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((sqrt.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 2)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (exp.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((cbrt.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((expm1.f64 (log1p.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (log.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 1)) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((log1p.f64 (expm1.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 x.re (/.f64 y.re y.im) x.im) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 (*.f64 x.re (/.f64 y.re y.im)) x.im) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 1 x.im (*.f64 x.re (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (sqrt.f64 x.im) (sqrt.f64 x.im) (*.f64 x.re (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) x.im) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (pow.f64 (cbrt.f64 x.im) 2) (cbrt.f64 x.im) (*.f64 x.re (/.f64 y.re y.im))) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) x.im) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f)) ((fma.f64 (/.f64 x.re y.im) y.re x.im) #(struct:egraph-query ((/.f64 x.re (/.f64 y.im y.re)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (#<rule *-un-lft-identity> #<rule add-sqr-sqrt> #<rule add-cube-cbrt> #<rule add-cbrt-cube> #<rule add-exp-log> #<rule add-log-exp> #<rule pow1> #<rule log1p-expm1-u> #<rule expm1-log1p-u> #<rule +-commutative> #<rule *-commutative> #<rule associate-+r+> #<rule associate-+l+> #<rule associate-+r-> #<rule associate-+l-> #<rule associate--r+> #<rule associate--l+> #<rule associate--l-> #<rule associate--r-> #<rule associate-*r*> #<rule associate-*l*> #<rule associate-*r/> #<rule associate-*l/> #<rule associate-/r*> #<rule associate-/l*> #<rule associate-/r/> #<rule associate-/l/> #<rule count-2> #<rule distribute-lft-in> #<rule distribute-rgt-in> #<rule distribute-lft-out> #<rule distribute-lft-out--> #<rule distribute-rgt-out> #<rule distribute-rgt-out--> #<rule distribute-lft1-in> #<rule distribute-rgt1-in> #<rule distribute-lft-neg-in> #<rule distribute-rgt-neg-in> #<rule distribute-lft-neg-out> #<rule distribute-rgt-neg-out> #<rule distribute-neg-in> #<rule distribute-neg-out> #<rule distribute-frac-neg> #<rule distribute-neg-frac> #<rule cancel-sign-sub> #<rule cancel-sign-sub-inv> #<rule swap-sqr> #<rule unswap-sqr> #<rule difference-of-squares> #<rule difference-of-sqr-1> #<rule difference-of-sqr--1> #<rule sqr-pow> #<rule pow-sqr> #<rule flip-+> #<rule flip--> #<rule remove-double-div> #<rule rgt-mult-inverse> #<rule lft-mult-inverse> #<rule +-inverses> #<rule *-inverses> #<rule div0> #<rule mul0-lft> #<rule mul0-rgt> #<rule +-lft-identity> #<rule +-rgt-identity> #<rule --rgt-identity> #<rule sub0-neg> #<rule remove-double-neg> #<rule *-lft-identity> #<rule *-rgt-identity> #<rule /-rgt-identity> #<rule mul-1-neg> #<rule sub-neg> #<rule unsub-neg> #<rule neg-sub0> #<rule neg-mul-1> #<rule div-inv> #<rule un-div-inv> #<rule clear-num> #<rule sum-cubes> #<rule difference-cubes> #<rule flip3-+> #<rule flip3--> #<rule div-sub> #<rule times-frac> #<rule sub-div> #<rule frac-add> #<rule frac-sub> #<rule frac-times> #<rule frac-2neg> #<rule rem-square-sqrt> #<rule rem-sqrt-square> #<rule sqr-neg> #<rule sqr-abs> #<rule fabs-fabs> #<rule fabs-sub> #<rule fabs-neg> #<rule fabs-sqr> #<rule fabs-mul> #<rule fabs-div> #<rule neg-fabs> #<rule mul-fabs> #<rule div-fabs> #<rule sqrt-prod> #<rule sqrt-div> #<rule sqrt-pow1> #<rule sqrt-pow2> #<rule sqrt-unprod> #<rule sqrt-undiv> #<rule rem-cube-cbrt> #<rule rem-cbrt-cube> #<rule rem-3cbrt-lft> #<rule rem-3cbrt-rft> #<rule cube-neg> #<rule cube-prod> #<rule cube-div> #<rule cube-mult> #<rule cbrt-prod> #<rule cbrt-div> #<rule cbrt-unprod> #<rule cbrt-undiv> #<rule cube-unmult> #<rule rem-exp-log> #<rule rem-log-exp> #<rule exp-0> #<rule exp-1-e> #<rule 1-exp> #<rule e-exp-1> #<rule exp-sum> #<rule exp-neg> #<rule exp-diff> #<rule prod-exp> #<rule rec-exp> #<rule div-exp> #<rule exp-prod> #<rule exp-sqrt> #<rule exp-cbrt> #<rule exp-lft-sqr> #<rule exp-lft-cube> #<rule unpow-1> #<rule unpow1> #<rule unpow0> #<rule pow-base-1> #<rule exp-to-pow> #<rule pow-plus> #<rule unpow1/2> #<rule unpow2> #<rule unpow3> #<rule unpow1/3> #<rule pow-exp> #<rule pow-to-exp> #<rule pow-prod-up> #<rule pow-prod-down> #<rule pow-pow> #<rule pow-neg> #<rule pow-flip> #<rule pow-div> #<rule pow-sub> #<rule pow-unpow> #<rule unpow-prod-up> #<rule unpow-prod-down> #<rule pow1/2> #<rule pow2> #<rule pow1/3> #<rule pow3> #<rule pow-base-0> #<rule inv-pow> #<rule log-prod> #<rule log-div> #<rule log-rec> #<rule log-pow> #<rule log-E> #<rule sum-log> #<rule diff-log> #<rule neg-log> #<rule cos-sin-sum> #<rule 1-sub-cos> #<rule 1-sub-sin> #<rule -1-add-cos> #<rule -1-add-sin> #<rule sub-1-cos> #<rule sub-1-sin> #<rule sin-PI/6> #<rule sin-PI/4> #<rule sin-PI/3> #<rule sin-PI/2> #<rule sin-PI> #<rule sin-+PI> #<rule sin-+PI/2> #<rule cos-PI/6> #<rule cos-PI/4> #<rule cos-PI/3> #<rule cos-PI/2> #<rule cos-PI> #<rule cos-+PI> #<rule cos-+PI/2> #<rule tan-PI/6> #<rule tan-PI/4> #<rule tan-PI/3> #<rule tan-PI> #<rule tan-+PI> #<rule tan-+PI/2> #<rule hang-0p-tan> #<rule hang-0m-tan> #<rule hang-p0-tan> #<rule hang-m0-tan> #<rule hang-p-tan> #<rule hang-m-tan> #<rule sin-0> #<rule cos-0> #<rule tan-0> #<rule sin-neg> #<rule cos-neg> #<rule tan-neg> #<rule sin-sum> #<rule cos-sum> #<rule tan-sum> #<rule sin-diff> #<rule cos-diff> #<rule sin-2> #<rule sin-3> #<rule 2-sin> #<rule 3-sin> #<rule cos-2> #<rule cos-3> #<rule 2-cos> #<rule 3-cos> #<rule tan-2> #<rule 2-tan> #<rule sqr-sin-a> #<rule sqr-cos-a> #<rule diff-sin> #<rule diff-cos> #<rule sum-sin> #<rule sum-cos> #<rule cos-mult> #<rule sin-mult> #<rule sin-cos-mult> #<rule diff-atan> #<rule sum-atan> #<rule tan-quot> #<rule quot-tan> #<rule tan-hang-p> #<rule tan-hang-m> #<rule sin-asin> #<rule cos-acos> #<rule tan-atan> #<rule atan-tan> #<rule asin-sin> #<rule acos-cos> #<rule atan-tan-s> #<rule asin-sin-s> #<rule acos-cos-s> #<rule cos-asin> #<rule tan-asin> #<rule sin-acos> #<rule tan-acos> #<rule sin-atan> #<rule cos-atan> #<rule asin-acos> #<rule acos-asin> #<rule asin-neg> #<rule acos-neg> #<rule atan-neg> #<rule sinh-def> #<rule cosh-def> #<rule tanh-def-a> #<rule tanh-def-b> #<rule tanh-def-c> #<rule sinh-cosh> #<rule sinh-+-cosh> #<rule sinh---cosh> #<rule sinh-undef> #<rule cosh-undef> #<rule tanh-undef> #<rule cosh-sum> #<rule cosh-diff> #<rule cosh-2> #<rule cosh-1/2> #<rule sinh-sum> #<rule sinh-diff> #<rule sinh-2> #<rule sinh-1/2> #<rule tanh-sum> #<rule tanh-2> #<rule tanh-1/2> #<rule tanh-1/2*> #<rule sum-sinh> #<rule sum-cosh> #<rule diff-sinh> #<rule diff-cosh> #<rule sinh-neg> #<rule sinh-0> #<rule cosh-neg> #<rule cosh-0> #<rule asinh-def> #<rule acosh-def> #<rule atanh-def> #<rule acosh-2> #<rule asinh-2> #<rule sinh-asinh> #<rule sinh-acosh> #<rule sinh-atanh> #<rule cosh-asinh> #<rule cosh-acosh> #<rule cosh-atanh> #<rule tanh-asinh> #<rule tanh-acosh> #<rule tanh-atanh> #<rule expm1-def> #<rule log1p-def> #<rule log1p-expm1> #<rule expm1-log1p> #<rule hypot-def> #<rule hypot-1-def> #<rule fma-def> #<rule fma-neg> #<rule fma-udef> #<rule expm1-udef> #<rule log1p-udef> #<rule hypot-udef> #<rule prod-diff> #<rule lt-same> #<rule gt-same> #<rule lte-same> #<rule gte-same> #<rule not-lt> #<rule not-gt> #<rule not-lte> #<rule not-gte> #<rule if-true> #<rule if-false> #<rule if-same> #<rule if-not> #<rule if-if-or> #<rule if-if-or-not> #<rule if-if-and> #<rule if-if-and-not> #<rule erf-odd> #<rule erf-erfc> #<rule erfc-erf> #<rule not-true> #<rule not-false> #<rule not-not> #<rule not-and> #<rule not-or> #<rule and-true-l> #<rule and-true-r> #<rule and-false-l> #<rule and-false-r> #<rule and-same> #<rule or-true-l> #<rule or-true-r> #<rule or-false-l> #<rule or-false-r> #<rule or-same>) #f #f 8000 #f))) |
| 1× | egg-herbie |
| 952× | associate-*r* |
| 816× | associate-/l* |
| 802× | times-frac |
| 802× | +-commutative |
| 772× | associate-*l* |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 537 | 11254 |
| 1 | 1625 | 10338 |
| 2 | 7943 | 10338 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) |
(/.f64 x.re y.im) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (/.f64 x.re y.im)))) |
(*.f64 -1 (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))))) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2)))))) |
(/.f64 x.re y.im) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (/.f64 x.re y.im)))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) |
(*.f64 -1 (/.f64 x.im y.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))) (*.f64 -1 (/.f64 x.im y.im))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) |
(*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) 1) |
(*.f64 x.re (/.f64 y.re y.im)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(*.f64 (*.f64 x.re (/.f64 y.re y.im)) 1) |
(*.f64 1 (*.f64 x.re (/.f64 y.re y.im))) |
(*.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (/.f64 y.re y.im))) |
(*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re y.im) y.re) |
(*.f64 (/.f64 y.re y.im) x.re) |
(*.f64 (neg.f64 x.re) (*.f64 -1 (/.f64 y.re y.im))) |
(*.f64 (*.f64 (/.f64 x.re y.im) 1) y.re) |
(*.f64 (*.f64 (/.f64 x.re y.im) (sqrt.f64 y.re)) (sqrt.f64 y.re)) |
(*.f64 (*.f64 (/.f64 x.re y.im) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) |
(*.f64 (/.f64 1 y.im) (*.f64 x.re y.re)) |
(*.f64 (/.f64 1 y.im) (*.f64 (/.f64 x.re 1) y.re)) |
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (/.f64 x.re (cbrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 x.re 1) (/.f64 y.re y.im)) |
(*.f64 (/.f64 x.re (sqrt.f64 y.im)) (/.f64 y.re (sqrt.f64 y.im))) |
(*.f64 (/.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (/.f64 y.re (cbrt.f64 y.im))) |
(*.f64 (/.f64 1 (neg.f64 y.im)) (*.f64 x.re (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (neg.f64 y.im)) (neg.f64 y.re)) |
(*.f64 (*.f64 -1 (/.f64 y.re y.im)) (neg.f64 x.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) 1) (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re))) |
(*.f64 (/.f64 (sqrt.f64 x.re) y.im) (*.f64 (/.f64 (sqrt.f64 x.re) 1) y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) 1) (*.f64 (/.f64 (cbrt.f64 x.re) y.im) y.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re)) (sqrt.f64 x.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) y.im) (*.f64 (/.f64 (cbrt.f64 x.re) 1) y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (sqrt.f64 (/.f64 y.im y.re))) (/.f64 (cbrt.f64 x.re) (sqrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 (/.f64 x.re -1) (neg.f64 (/.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (neg.f64 (neg.f64 y.im))) (neg.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (/.f64 y.im 1)) y.re) |
(*.f64 (/.f64 x.re (/.f64 y.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 x.re (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (/.f64 1 (/.f64 y.im (*.f64 (sqrt.f64 x.re) y.re))) (sqrt.f64 x.re)) |
(*.f64 (/.f64 1 (/.f64 y.im (*.f64 (pow.f64 (cbrt.f64 x.re) 2) y.re))) (cbrt.f64 x.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (/.f64 y.im y.re)) (cbrt.f64 x.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) 1) y.re) |
(*.f64 (/.f64 (/.f64 x.re y.im) 1) (/.f64 y.re 1)) |
(*.f64 (/.f64 (/.f64 x.re y.im) -1) (neg.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) (/.f64 1 (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (/.f64 (neg.f64 x.re) -1) (/.f64 y.re y.im)) |
(*.f64 (/.f64 (neg.f64 x.re) (neg.f64 (neg.f64 y.im))) (neg.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) 1) (/.f64 y.re y.im)) |
(*.f64 (/.f64 (/.f64 x.re 1) (sqrt.f64 y.im)) (/.f64 y.re (sqrt.f64 y.im))) |
(*.f64 (/.f64 (/.f64 x.re 1) (cbrt.f64 (*.f64 y.im y.im))) (/.f64 y.re (cbrt.f64 y.im))) |
(*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 y.im)) (neg.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) -1) (neg.f64 (/.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im 1)) y.re) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 (neg.f64 y.im))) (neg.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) 1) (sqrt.f64 (/.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 y.im)) (sqrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 (neg.f64 y.im))) (sqrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) 1) (cbrt.f64 (/.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 y.im)) (cbrt.f64 y.re)) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 (neg.f64 y.im))) (cbrt.f64 (neg.f64 y.re))) |
(pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) 3) |
(pow.f64 (/.f64 y.im (*.f64 x.re y.re)) -1) |
(pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 1/3) |
(neg.f64 (*.f64 (/.f64 x.re (neg.f64 y.im)) y.re)) |
(sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) |
(log.f64 (pow.f64 (exp.f64 x.re) (/.f64 y.re y.im))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) |
(expm1.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(exp.f64 (log.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 x.re (/.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.im (hypot.f64 y.re y.im))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) 1) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) |
(/.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) (sqrt.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(/.f64 (sqrt.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) (sqrt.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(/.f64 (*.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) -1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 -1 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(/.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) |
(/.f64 (-.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) (-.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (+.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (+.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) 3)) (-.f64 (+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (+.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))))) |
(/.f64 (*.f64 -1 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (*.f64 -1 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) 1) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) -1) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) 1) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (hypot.f64 y.re y.im))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) -1) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(/.f64 (neg.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (neg.f64 (hypot.f64 y.re y.im))) |
(pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 1) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 2) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 3) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 3) 1/3) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 2)) |
(log.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))))) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 3)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3))) |
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(exp.f64 (log.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 1)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(fma.f64 x.im (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) (-.f64 1 x.im)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) 1) |
(-.f64 (exp.f64 (log1p.f64 x.im)) (-.f64 1 (*.f64 x.re (/.f64 y.re y.im)))) |
(-.f64 (/.f64 (*.f64 x.im x.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (/.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(-.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (exp.f64 (log1p.f64 x.im))) 1) |
(-.f64 (+.f64 x.im (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im))))) 1) |
(*.f64 1 (fma.f64 (/.f64 x.re y.im) y.re x.im)) |
(*.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) |
(*.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(*.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (/.f64 1 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (/.f64 1 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(*.f64 (/.f64 1 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) |
(*.f64 (/.f64 1 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) |
(*.f64 (/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (fma.f64 (/.f64 x.re y.im) y.re x.im)) |
(*.f64 (/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (+.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(*.f64 (/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) (-.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(*.f64 (/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (+.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) 3))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (-.f64 (*.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (*.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(/.f64 1 (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) |
(/.f64 1 (/.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) |
(/.f64 1 (*.f64 1 (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))))) |
(/.f64 1 (*.f64 1 (/.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))))) |
(/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) |
(/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(/.f64 (-.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 1 (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (+.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 3)) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) 3)) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (+.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 1 (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 1 (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) |
(pow.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) |
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 3) |
(pow.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) 1/3) |
(sqrt.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 2)) |
(log.f64 (exp.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(exp.f64 (log.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 1)) |
(log1p.f64 (expm1.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 1 (*.f64 x.re (/.f64 y.re y.im)) x.im) |
(fma.f64 1 x.im (*.f64 x.re (/.f64 y.re y.im))) |
(fma.f64 (sqrt.f64 x.im) (sqrt.f64 x.im) (*.f64 x.re (/.f64 y.re y.im))) |
(fma.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) x.im) |
(fma.f64 (pow.f64 (cbrt.f64 x.im) 2) (cbrt.f64 x.im) (*.f64 x.re (/.f64 y.re y.im))) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) x.im) |
(fma.f64 (/.f64 x.re y.im) y.re x.im) |
| Outputs |
|---|
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 -1/2 (*.f64 x.im (*.f64 y.re y.re))) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) (/.f64 x.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) (*.f64 -1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))) |
(+.f64 (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im) (fma.f64 -1/2 (+.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (/.f64 x.im y.im))) |
(/.f64 x.re y.im) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (/.f64 x.re y.im) (/.f64 x.im y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 (/.f64 x.re y.im) (/.f64 x.im y.re))) |
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 x.re y.re)) (/.f64 x.im y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (/.f64 x.re y.im)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 (/.f64 x.im y.re) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (/.f64 x.re y.im)))) |
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 x.re y.im)) (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 x.re y.re)) (/.f64 x.im y.re))) |
(*.f64 -1 (/.f64 x.re y.im)) |
(/.f64 (neg.f64 x.re) y.im) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (*.f64 -1 (/.f64 x.re y.im))) |
(*.f64 -1 (+.f64 (/.f64 x.re y.im) (/.f64 x.im y.re))) |
(-.f64 (/.f64 (neg.f64 x.re) y.im) (/.f64 x.im y.re)) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (*.f64 1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))))) |
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (*.f64 (/.f64 x.re (/.f64 (*.f64 y.re y.re) y.im)) 1/2))) |
(-.f64 (-.f64 (*.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.re y.re)) 1/2) (/.f64 x.re y.im)) (/.f64 x.im y.re)) |
(+.f64 (*.f64 -1 (/.f64 x.im y.re)) (+.f64 (*.f64 -1 (/.f64 x.re y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (*.f64 1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2)))))) |
(fma.f64 -1 (/.f64 x.im y.re) (fma.f64 -1 (/.f64 x.re y.im) (*.f64 1/2 (+.f64 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (/.f64 x.re (/.f64 (*.f64 y.re y.re) y.im)))))) |
(-.f64 (fma.f64 1/2 (+.f64 (*.f64 (/.f64 y.im y.re) (/.f64 x.re y.re)) (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im)) (/.f64 (neg.f64 x.re) y.im)) (/.f64 x.im y.re)) |
(/.f64 x.re y.im) |
(+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im)) |
(+.f64 (/.f64 x.re y.im) (/.f64 x.im y.re)) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (/.f64 x.re y.im))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 (/.f64 x.re y.im) (/.f64 x.im y.re))) |
(+.f64 (/.f64 x.re y.im) (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 x.re y.re)) (/.f64 x.im y.re))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 x.re y.im) (pow.f64 y.re 2))) (+.f64 (/.f64 x.im y.re) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.im 2) x.im) (pow.f64 y.re 3))) (/.f64 x.re y.im)))) |
(fma.f64 -1/2 (/.f64 x.re (/.f64 (*.f64 y.re y.re) y.im)) (+.f64 (/.f64 x.im y.re) (fma.f64 -1/2 (/.f64 (*.f64 y.im y.im) (/.f64 (pow.f64 y.re 3) x.im)) (/.f64 x.re y.im)))) |
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.im y.im) (pow.f64 y.re 3)) x.im) (/.f64 x.re y.im)) (fma.f64 -1/2 (*.f64 (/.f64 y.im y.re) (/.f64 x.re y.re)) (/.f64 x.im y.re))) |
(/.f64 x.im y.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (/.f64 x.im y.im)) |
(+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(+.f64 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (+.f64 (/.f64 x.im y.im) (/.f64 (*.f64 -1/2 (*.f64 x.im (*.f64 y.re y.re))) (pow.f64 y.im 3)))) |
(+.f64 (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im) (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) (/.f64 x.im y.im))) |
(+.f64 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2)) (+.f64 (/.f64 x.im y.im) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 -1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) |
(+.f64 (+.f64 (/.f64 x.im y.im) (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re))) (*.f64 -1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3)))))) |
(+.f64 (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im) (fma.f64 -1/2 (+.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3))) (/.f64 x.im y.im))) |
(*.f64 -1 (/.f64 x.im y.im)) |
(neg.f64 (/.f64 x.im y.im)) |
(/.f64 (neg.f64 x.im) y.im) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))) (*.f64 -1 (/.f64 x.im y.im))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (neg.f64 (/.f64 x.im y.im))) |
(-.f64 (/.f64 (neg.f64 x.im) y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.im y.im) (*.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) 1/2))) |
(-.f64 (-.f64 (*.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) 1/2) (/.f64 x.im y.im)) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 x.re y.re) (pow.f64 y.im 2))) (+.f64 (*.f64 -1 (/.f64 x.im y.im)) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 y.re 2) x.im) (pow.f64 y.im 3))) (*.f64 1/2 (/.f64 (*.f64 x.re (pow.f64 y.re 3)) (pow.f64 y.im 4)))))) |
(fma.f64 -1 (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) (fma.f64 -1 (/.f64 x.im y.im) (*.f64 1/2 (+.f64 (/.f64 (*.f64 y.re y.re) (/.f64 (pow.f64 y.im 3) x.im)) (/.f64 x.re (/.f64 (pow.f64 y.im 4) (pow.f64 y.re 3))))))) |
(-.f64 (-.f64 (*.f64 1/2 (+.f64 (*.f64 (/.f64 (*.f64 y.re y.re) (pow.f64 y.im 3)) x.im) (*.f64 (/.f64 x.re (pow.f64 y.im 4)) (pow.f64 y.re 3)))) (/.f64 x.im y.im)) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im))) |
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) |
(*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 x.im (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) |
(*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 x.im (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) |
(*.f64 x.im (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re))))) |
(*.f64 x.im (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im))) |
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))) |
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im))) |
(*.f64 x.re (*.f64 (/.f64 y.re y.im) (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))))) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) x.im) (*.f64 (/.f64 (*.f64 x.re y.re) y.im) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) |
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) x.im (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 y.im y.im) (*.f64 y.re y.re)))) (*.f64 y.re (/.f64 x.re y.im)))) |
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 y.re y.re (*.f64 y.im y.im)))) (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
x.im |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(/.f64 (*.f64 x.re y.re) y.im) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(+.f64 (/.f64 (*.f64 x.re y.re) y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) 1) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 x.re (/.f64 y.re y.im)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (*.f64 x.re (/.f64 y.re y.im)) 1) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 1 (*.f64 x.re (/.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (sqrt.f64 x.re) (*.f64 (sqrt.f64 x.re) (/.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (pow.f64 (cbrt.f64 x.re) 2) (*.f64 (cbrt.f64 x.re) (/.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) |
(*.f64 (cbrt.f64 (*.f64 y.re (/.f64 x.re y.im))) (cbrt.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2))) |
(*.f64 (cbrt.f64 (/.f64 x.re (/.f64 y.im y.re))) (cbrt.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 (cbrt.f64 (*.f64 y.re (/.f64 x.re y.im))) (cbrt.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2))) |
(*.f64 (cbrt.f64 (/.f64 x.re (/.f64 y.im y.re))) (cbrt.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2))) |
(*.f64 (/.f64 x.re y.im) y.re) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) x.re) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (neg.f64 x.re) (*.f64 -1 (/.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (*.f64 (/.f64 x.re y.im) 1) y.re) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (*.f64 (/.f64 x.re y.im) (sqrt.f64 y.re)) (sqrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (*.f64 (/.f64 x.re y.im) (pow.f64 (cbrt.f64 y.re) 2)) (cbrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 y.im) (*.f64 x.re y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 y.im) (*.f64 (/.f64 x.re 1) y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (*.f64 1 (sqrt.f64 (/.f64 y.re y.im))) (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (/.f64 x.re (cbrt.f64 (/.f64 y.im y.re)))) |
(/.f64 (/.f64 x.re (cbrt.f64 (/.f64 y.im y.re))) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) |
(*.f64 (/.f64 x.re 1) (/.f64 y.re y.im)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re (sqrt.f64 y.im)) (/.f64 y.re (sqrt.f64 y.im))) |
(/.f64 (/.f64 x.re (sqrt.f64 y.im)) (/.f64 (sqrt.f64 y.im) y.re)) |
(*.f64 (/.f64 x.re (cbrt.f64 (*.f64 y.im y.im))) (/.f64 y.re (cbrt.f64 y.im))) |
(/.f64 (*.f64 x.re (/.f64 y.re (cbrt.f64 y.im))) (cbrt.f64 (*.f64 y.im y.im))) |
(/.f64 x.re (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 y.re (cbrt.f64 y.im)))) |
(*.f64 (/.f64 1 (neg.f64 y.im)) (*.f64 x.re (neg.f64 y.re))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re (neg.f64 y.im)) (neg.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (*.f64 -1 (/.f64 y.re y.im)) (neg.f64 x.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) 1) (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) y.im) (*.f64 (/.f64 (sqrt.f64 x.re) 1) y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) 1) (*.f64 (/.f64 (cbrt.f64 x.re) y.im) y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) (/.f64 y.im y.re)) (sqrt.f64 x.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (sqrt.f64 x.re) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (/.f64 (sqrt.f64 x.re) (cbrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (/.f64 x.re (cbrt.f64 (/.f64 y.im y.re)))) |
(/.f64 (/.f64 x.re (cbrt.f64 (/.f64 y.im y.re))) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) y.im) (*.f64 (/.f64 (cbrt.f64 x.re) 1) y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (sqrt.f64 (/.f64 y.im y.re))) (/.f64 (cbrt.f64 x.re) (sqrt.f64 (/.f64 y.im y.re)))) |
(/.f64 (*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (sqrt.f64 (/.f64 y.im y.re))) (cbrt.f64 x.re)) (sqrt.f64 (/.f64 y.im y.re))) |
(/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 (/.f64 y.im y.re))) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(/.f64 (*.f64 (pow.f64 (cbrt.f64 x.re) 2) (cbrt.f64 (*.f64 y.re (/.f64 x.re y.im)))) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) |
(*.f64 (cbrt.f64 (/.f64 x.re (/.f64 y.im y.re))) (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2))) |
(*.f64 (/.f64 x.re -1) (neg.f64 (/.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re (neg.f64 (neg.f64 y.im))) (neg.f64 (neg.f64 y.re))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re (/.f64 y.im 1)) y.re) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re (/.f64 y.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 x.re (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 (/.f64 y.im (*.f64 (sqrt.f64 x.re) y.re))) (sqrt.f64 x.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 1 (/.f64 y.im (*.f64 (pow.f64 (cbrt.f64 x.re) 2) y.re))) (cbrt.f64 x.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (pow.f64 (cbrt.f64 x.re) 2) (/.f64 y.im y.re)) (cbrt.f64 x.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) 1) y.re) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) 1) (/.f64 y.re 1)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) -1) (neg.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) (/.f64 1 (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re y.im) (/.f64 1 (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (neg.f64 x.re) -1) (/.f64 y.re y.im)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (neg.f64 x.re) (neg.f64 (neg.f64 y.im))) (neg.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) 1) (/.f64 y.re y.im)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (sqrt.f64 y.im)) (/.f64 y.re (sqrt.f64 y.im))) |
(*.f64 (/.f64 x.re (sqrt.f64 y.im)) (/.f64 y.re (sqrt.f64 y.im))) |
(/.f64 (/.f64 x.re (sqrt.f64 y.im)) (/.f64 (sqrt.f64 y.im) y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (cbrt.f64 (*.f64 y.im y.im))) (/.f64 y.re (cbrt.f64 y.im))) |
(/.f64 (*.f64 x.re (/.f64 y.re (cbrt.f64 y.im))) (cbrt.f64 (*.f64 y.im y.im))) |
(/.f64 x.re (/.f64 (cbrt.f64 (*.f64 y.im y.im)) (/.f64 y.re (cbrt.f64 y.im)))) |
(*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 y.im)) (neg.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) -1) (neg.f64 (/.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im 1)) y.re) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im (sqrt.f64 y.re))) (sqrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (/.f64 y.im (pow.f64 (cbrt.f64 y.re) 2))) (cbrt.f64 y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re 1) (neg.f64 (neg.f64 y.im))) (neg.f64 (neg.f64 y.re))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) 1) (sqrt.f64 (/.f64 y.re y.im))) |
(*.f64 (sqrt.f64 (/.f64 y.re y.im)) (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 y.im)) (sqrt.f64 y.re)) |
(/.f64 (*.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 y.re)) (sqrt.f64 y.im)) |
(*.f64 (sqrt.f64 y.re) (/.f64 (/.f64 x.re (sqrt.f64 y.im)) (sqrt.f64 (/.f64 y.im y.re)))) |
(*.f64 (/.f64 (/.f64 x.re (sqrt.f64 (/.f64 y.im y.re))) (sqrt.f64 (neg.f64 y.im))) (sqrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (*.f64 (sqrt.f64 (neg.f64 y.im)) (sqrt.f64 (/.f64 y.im y.re)))) (sqrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (*.f64 (sqrt.f64 (/.f64 y.im y.re)) (sqrt.f64 (neg.f64 y.im)))) (sqrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) 1) (cbrt.f64 (/.f64 y.re y.im))) |
(*.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 (/.f64 y.re y.im))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 y.im)) (cbrt.f64 y.re)) |
(*.f64 (cbrt.f64 y.re) (/.f64 x.re (*.f64 (cbrt.f64 y.im) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)))) |
(*.f64 (cbrt.f64 y.re) (/.f64 (/.f64 x.re (cbrt.f64 y.im)) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2))) |
(*.f64 (/.f64 (/.f64 x.re (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2)) (cbrt.f64 (neg.f64 y.im))) (cbrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (*.f64 (cbrt.f64 (neg.f64 y.im)) (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2))) (cbrt.f64 (neg.f64 y.re))) |
(*.f64 (/.f64 x.re (*.f64 (pow.f64 (cbrt.f64 (/.f64 y.im y.re)) 2) (cbrt.f64 (neg.f64 y.im)))) (cbrt.f64 (neg.f64 y.re))) |
(pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 1) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(pow.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) 2) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(pow.f64 (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) 3) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(pow.f64 (/.f64 y.im (*.f64 x.re y.re)) -1) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 1/3) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(neg.f64 (*.f64 (/.f64 x.re (neg.f64 y.im)) y.re)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(sqrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) |
(fabs.f64 (/.f64 x.re (/.f64 y.im y.re))) |
(log.f64 (pow.f64 (exp.f64 x.re) (/.f64 y.re y.im))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x.re (/.f64 y.re y.im))))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(expm1.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(exp.f64 (log.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(exp.f64 (*.f64 (log.f64 (*.f64 x.re (/.f64 y.re y.im))) 1)) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(log1p.f64 (expm1.f64 (*.f64 x.re (/.f64 y.re y.im)))) |
(*.f64 y.re (/.f64 x.re y.im)) |
(/.f64 x.re (/.f64 y.im y.re)) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re)) |
(+.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.im (hypot.f64 y.re y.im))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re)) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) 1) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 1 (/.f64 (hypot.f64 y.re y.im) (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) (/.f64 (hypot.f64 y.re y.im) (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (sqrt.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) (sqrt.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(/.f64 (/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3))) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im)))) (sqrt.f64 (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (/.f64 (hypot.f64 (pow.f64 x.im 3/2) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3/2)) (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im)))) (sqrt.f64 (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (sqrt.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) (sqrt.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (sqrt.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2))) (*.f64 (/.f64 (hypot.f64 y.re y.im) (sqrt.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im))) (sqrt.f64 (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))))) |
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2))) (*.f64 (hypot.f64 y.re y.im) (sqrt.f64 (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))))) (sqrt.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (*.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) -1) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (*.f64 -1 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (/.f64 1 (hypot.f64 y.re y.im))) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (/.f64 1 (hypot.f64 y.re y.im))) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (sqrt.f64 (hypot.f64 y.re y.im))) (sqrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (pow.f64 (cbrt.f64 (hypot.f64 y.re y.im)) 2)) (cbrt.f64 (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (-.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) |
(/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 6)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 6)) (hypot.f64 y.re y.im)) (*.f64 (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))) (-.f64 (pow.f64 x.im 3) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3)))) |
(/.f64 (-.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) (-.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) |
(/.f64 (+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re)) (/.f64 (-.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re)) (-.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 (hypot.f64 y.re y.im) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (+.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) |
(/.f64 (-.f64 (*.f64 x.im (pow.f64 x.im 3)) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 4)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) (fma.f64 x.im x.im (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)))) |
(/.f64 (-.f64 (pow.f64 x.im 4) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 4)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) (fma.f64 x.im x.im (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (+.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) 3)) (*.f64 (hypot.f64 y.re y.im) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))) (+.f64 (pow.f64 x.im 6) (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 6) (*.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3))))))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) 3)) (*.f64 (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))) (*.f64 (hypot.f64 y.re y.im) (fma.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (-.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (pow.f64 x.im 6))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) 3)) (-.f64 (+.f64 (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) (*.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 3) (pow.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) 3)) (-.f64 (fma.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im))))) (*.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.im (hypot.f64 y.re y.im)) 3) (pow.f64 (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re) 3)) (fma.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re) (-.f64 (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re) (/.f64 x.im (hypot.f64 y.re y.im)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) 3)) (*.f64 (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (+.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2) 3)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) (+.f64 (*.f64 x.im (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2) (fma.f64 x.im x.im (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 6)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) (fma.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2) (fma.f64 x.im x.im (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (pow.f64 x.im 4))) |
(/.f64 (*.f64 -1 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (*.f64 -1 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (neg.f64 (hypot.f64 y.re y.im)) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) 1) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (hypot.f64 y.re y.im))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) -1) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) 1) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) -1) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (neg.f64 (hypot.f64 y.re y.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (*.f64 (hypot.f64 y.re y.im) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (hypot.f64 y.re y.im) (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (*.f64 (hypot.f64 y.re y.im) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))))) |
(/.f64 (neg.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (neg.f64 (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 1) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(pow.f64 (sqrt.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 2) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(pow.f64 (cbrt.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 3) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(pow.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 3) 1/3) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 2)) |
(sqrt.f64 (pow.f64 (/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) 2)) |
(fabs.f64 (/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im))) |
(log.f64 (exp.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)) 3)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(cbrt.f64 (*.f64 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)) (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 3)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(cbrt.f64 (/.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) (pow.f64 (hypot.f64 y.re y.im) 3))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(exp.f64 (log.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im))) 1)) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(log1p.f64 (expm1.f64 (/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) (hypot.f64 y.re y.im)))) |
(/.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) (hypot.f64 y.re y.im)) |
(fma.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.im (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re)) |
(fma.f64 x.im (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (/.f64 x.re (*.f64 (/.f64 y.im y.re) (hypot.f64 y.re y.im)))) |
(+.f64 (/.f64 x.im (hypot.f64 y.re y.im)) (*.f64 (/.f64 x.re (*.f64 y.im (hypot.f64 y.re y.im))) y.re)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im)))) (-.f64 1 x.im)) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) 1) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(-.f64 (exp.f64 (log1p.f64 x.im)) (-.f64 1 (*.f64 x.re (/.f64 y.re y.im)))) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 x.im)) 1) (*.f64 y.re (/.f64 x.re y.im))) |
(fma.f64 x.re (/.f64 y.re y.im) (expm1.f64 (log1p.f64 x.im))) |
(-.f64 (/.f64 (*.f64 x.im x.im) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (/.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(-.f64 (+.f64 (*.f64 x.re (/.f64 y.re y.im)) (exp.f64 (log1p.f64 x.im))) 1) |
(+.f64 (-.f64 (exp.f64 (log1p.f64 x.im)) 1) (*.f64 y.re (/.f64 x.re y.im))) |
(fma.f64 x.re (/.f64 y.re y.im) (expm1.f64 (log1p.f64 x.im))) |
(-.f64 (+.f64 x.im (exp.f64 (log1p.f64 (*.f64 x.re (/.f64 y.re y.im))))) 1) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(*.f64 1 (fma.f64 (/.f64 x.re y.im) y.re x.im)) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(*.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(*.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(*.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2)) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (/.f64 1 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (/.f64 1 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(*.f64 (/.f64 1 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(*.f64 (/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (fma.f64 (/.f64 x.re y.im) y.re x.im)) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(*.f64 (/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (+.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(*.f64 (/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3))) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (fma.f64 x.re (/.f64 y.re y.im) x.im)))) |
(/.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (fma.f64 (/.f64 x.re (/.f64 y.im y.re)) (fma.f64 x.re (/.f64 y.re y.im) x.im) (*.f64 x.im x.im))) (-.f64 (pow.f64 x.im 3) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3))) |
(*.f64 (/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) (-.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (-.f64 (*.f64 x.im (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2) (*.f64 (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))))) (-.f64 (*.f64 x.im x.im) (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (-.f64 (pow.f64 x.im 4) (*.f64 (*.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))) (fma.f64 x.im x.im (*.f64 (neg.f64 x.re) (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (+.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) 3))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (-.f64 (*.f64 (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (*.f64 (*.f64 x.im x.im) (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(*.f64 (/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (+.f64 (pow.f64 x.im 6) (pow.f64 (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)) 3))) (+.f64 (*.f64 x.im (pow.f64 x.im 3)) (*.f64 (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)) (-.f64 (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)) (*.f64 x.im x.im))))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (/.f64 (+.f64 (pow.f64 x.im 6) (pow.f64 (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))) 3)) (fma.f64 (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))) (fma.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)) (*.f64 x.im (neg.f64 x.im))) (pow.f64 x.im 4)))) |
(/.f64 1 (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(/.f64 1 (/.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(/.f64 1 (*.f64 1 (/.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(/.f64 1 (*.f64 1 (/.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(/.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(/.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(/.f64 (-.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))) |
(/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 6)) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im))) (-.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3)))) |
(/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 6)) (*.f64 (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im)))) (-.f64 (pow.f64 x.im 3) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (*.f64 x.im x.im)) (*.f64 1 (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(/.f64 (-.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (+.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))) |
(/.f64 (/.f64 (-.f64 (*.f64 x.im (pow.f64 x.im 3)) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 4)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) (fma.f64 x.im x.im (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2))) |
(/.f64 (-.f64 (pow.f64 x.im 4) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 4)) (*.f64 (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) (fma.f64 x.im x.im (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)))) |
(/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) 3)) (*.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))) (+.f64 (*.f64 (pow.f64 x.im 3) (pow.f64 x.im 3)) (-.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)) (*.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3)))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) (+.f64 (pow.f64 x.im 6) (-.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 6) (*.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3))))) |
(/.f64 (/.f64 (+.f64 (pow.f64 (pow.f64 x.im 3) 3) (pow.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) 3)) (fma.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (-.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (pow.f64 x.im 6))) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x.im x.im) 3) (pow.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) 3)) (*.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))) (+.f64 (*.f64 (*.f64 x.im x.im) (*.f64 x.im x.im)) (+.f64 (*.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (*.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2) 3)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) (+.f64 (*.f64 x.im (pow.f64 x.im 3)) (*.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2) (fma.f64 x.im x.im (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2))))) |
(/.f64 (/.f64 (-.f64 (pow.f64 x.im 6) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 6)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) (fma.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2) (fma.f64 x.im x.im (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (pow.f64 x.im 4))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2))) (*.f64 1 (neg.f64 (-.f64 x.im (*.f64 x.re (/.f64 y.re y.im)))))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (-.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) |
(/.f64 (-.f64 (*.f64 x.im x.im) (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) (-.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x.im 3) (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 3))) (*.f64 1 (neg.f64 (fma.f64 x.im x.im (*.f64 (*.f64 x.re (/.f64 y.re y.im)) (-.f64 (*.f64 x.re (/.f64 y.re y.im)) x.im)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 (*.f64 y.re (/.f64 x.re y.im)) (-.f64 (*.f64 y.re (/.f64 x.re y.im)) x.im)))) |
(/.f64 (+.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 3) (pow.f64 x.im 3)) (fma.f64 x.im x.im (*.f64 x.re (*.f64 (/.f64 y.re y.im) (-.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im))))) |
(pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 1) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(pow.f64 (sqrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 2) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(pow.f64 (cbrt.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 3) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(pow.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3) 1/3) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(sqrt.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 2)) |
(sqrt.f64 (pow.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im) 2)) |
(fabs.f64 (fma.f64 x.re (/.f64 y.re y.im) x.im)) |
(log.f64 (exp.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(cbrt.f64 (pow.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im) 3)) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(expm1.f64 (log1p.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(exp.f64 (log.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im)) 1)) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(log1p.f64 (expm1.f64 (fma.f64 (/.f64 x.re y.im) y.re x.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 1 (*.f64 x.re (/.f64 y.re y.im)) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 1 x.im (*.f64 x.re (/.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 (sqrt.f64 x.im) (sqrt.f64 x.im) (*.f64 x.re (/.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) (sqrt.f64 (*.f64 x.re (/.f64 y.re y.im))) x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 (pow.f64 (cbrt.f64 x.im) 2) (cbrt.f64 x.im) (*.f64 x.re (/.f64 y.re y.im))) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x.re (/.f64 y.re y.im)) 2)) (cbrt.f64 (*.f64 x.re (/.f64 y.re y.im))) x.im) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 y.re (/.f64 x.re y.im)) 2)) (cbrt.f64 (*.f64 y.re (/.f64 x.re y.im))) x.im) |
(fma.f64 (cbrt.f64 (/.f64 x.re (/.f64 y.im y.re))) (cbrt.f64 (pow.f64 (/.f64 x.re (/.f64 y.im y.re)) 2)) x.im) |
(fma.f64 (/.f64 x.re y.im) y.re x.im) |
(fma.f64 x.re (/.f64 y.re y.im) x.im) |
Compiled 29225 to 9987 computations (65.8% saved)
27 alts after pruning (23 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1107 | 11 | 1118 |
| Fresh | 8 | 12 | 20 |
| Picked | 1 | 0 | 1 |
| Done | 2 | 4 | 6 |
| Total | 1118 | 27 | 1145 |
| Status | Accuracy | Program |
|---|---|---|
| 57.8% | (/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) | |
| 24.9% | (/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) | |
| 34.9% | (/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) | |
| 12.3% | (/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) | |
| 18.4% | (/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) | |
| 20.2% | (/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) | |
| 25.1% | (/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) | |
| 5.9% | (/.f64 (neg.f64 x.re) y.im) | |
| 24.3% | (/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) | |
| 6.7% | (/.f64 (neg.f64 x.im) y.re) | |
| 6.6% | (/.f64 (neg.f64 x.im) y.im) | |
| 32.7% | (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) | |
| 10.7% | (/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) | |
| ✓ | 46.6% | (/.f64 x.re y.re) |
| 6.2% | (/.f64 x.re y.im) | |
| 17.8% | (/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) | |
| 18.8% | (/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) | |
| ✓ | 6.6% | (/.f64 x.im y.re) |
| ✓ | 36.6% | (/.f64 x.im y.im) |
| 54.7% | (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) | |
| 43.4% | (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) | |
| 13.3% | (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) | |
| 53.1% | (*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) | |
| ✓ | 19.0% | (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
| 65.9% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) | |
| 33.3% | (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) | |
| 36.5% | (*.f64 x.im (/.f64 1 y.im)) |
Compiled 313 to 200 computations (36.1% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
| Outputs |
|---|
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
5 calls:
| 50.0ms | x.im |
| 30.0ms | y.im |
| 27.0ms | x.re |
| 25.0ms | y.re |
| 18.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 98.6% | 1 | x.re |
| 98.6% | 1 | x.im |
| 98.6% | 1 | y.re |
| 98.6% | 1 | y.im |
| 98.6% | 1 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 600 to 185 computations (69.2% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (/.f64 (*.f64 y.re x.re) (hypot.f64 y.re y.im)))) |
(pow.f64 (/.f64 (pow.f64 (hypot.f64 y.re y.im) 2) (fma.f64 x.re y.re (*.f64 x.im y.im))) -1) |
| Outputs |
|---|
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re))) |
5 calls:
| 63.0ms | y.im |
| 49.0ms | x.im |
| 26.0ms | x.re |
| 25.0ms | y.re |
| 18.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 98.2% | 1 | x.re |
| 98.2% | 1 | x.im |
| 98.2% | 1 | y.re |
| 98.2% | 1 | y.im |
| 98.2% | 1 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 582 to 183 computations (68.6% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) |
| Outputs |
|---|
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
5 calls:
| 168.0ms | x.im |
| 133.0ms | y.re |
| 126.0ms | y.im |
| 100.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 93.0ms | x.re |
| Accuracy | Segments | Branch |
|---|---|---|
| 86.7% | 4 | x.re |
| 86.3% | 8 | x.im |
| 89.1% | 6 | y.re |
| 89.4% | 5 | y.im |
| 90.8% | 4 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 526 to 167 computations (68.3% saved)
| 3× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.0463646104929436e+262 | +inf |
| 0.0ms | -1.2254101608793645e-102 | -4.970583555285617e-109 |
| 0.0ms | -2.4307592178064082e+294 | -1.4998794440262343e+265 |
Compiled 26 to 17 computations (34.6% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
| Outputs |
|---|
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
5 calls:
| 202.0ms | y.im |
| 189.0ms | x.re |
| 184.0ms | y.re |
| 97.0ms | x.im |
| 59.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 83.2% | 7 | x.re |
| 81.9% | 5 | x.im |
| 89.1% | 6 | y.re |
| 88.3% | 5 | y.im |
| 89.6% | 4 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 496 to 158 computations (68.1% saved)
| 3× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.0463646104929436e+262 | +inf |
| 0.0ms | -1.2254101608793645e-102 | -4.970583555285617e-109 |
| 0.0ms | -2.4307592178064082e+294 | -1.4998794440262343e+265 |
Compiled 26 to 17 computations (34.6% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (/.f64 1 (pow.f64 (hypot.f64 y.re y.im) 2)))) |
| Outputs |
|---|
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
5 calls:
| 343.0ms | x.im |
| 258.0ms | x.re |
| 222.0ms | y.re |
| 131.0ms | y.im |
| 51.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 83.2% | 7 | x.re |
| 81.9% | 5 | x.im |
| 89.1% | 6 | y.re |
| 88.3% | 5 | y.im |
| 89.6% | 4 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 484 to 154 computations (68.2% saved)
| 3× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.0463646104929436e+262 | +inf |
| 0.0ms | -1.2254101608793645e-102 | -4.970583555285617e-109 |
| 0.0ms | -inf | -5.502645419606469e+305 |
Compiled 26 to 17 computations (34.6% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (fma.f64 -1 (/.f64 x.re (/.f64 y.im y.re)) (neg.f64 x.im))) |
| Outputs |
|---|
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) |
5 calls:
| 185.0ms | y.im |
| 177.0ms | y.re |
| 143.0ms | x.im |
| 142.0ms | x.re |
| 61.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 76.4% | 5 | x.re |
| 74.1% | 6 | x.im |
| 86.3% | 4 | y.re |
| 84.4% | 4 | y.im |
| 84.6% | 5 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 450 to 142 computations (68.4% saved)
| 3× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 17.0ms | 2.4589334548072235e-132 | 4.00036731064445e-130 |
| 18.0ms | -7.072406440858351e-64 | -1.60248313271947e-68 |
| 30.0ms | -1.0713158397200437e+39 | -1.6011908968811252e+32 |
| 56.0ms | 384× | body | 256 | valid |
| 3.0ms | 27× | body | 256 | infinite |
Compiled 890 to 545 computations (38.8% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re)))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 (*.f64 y.im x.im) y.re))) |
(*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 y.im -2)) |
(*.f64 (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.im (hypot.f64 y.re y.im))) |
(/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
| Outputs |
|---|
(/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
5 calls:
| 237.0ms | x.im |
| 121.0ms | y.im |
| 114.0ms | y.re |
| 108.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| 95.0ms | x.re |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.6% | 5 | x.re |
| 77.2% | 13 | x.im |
| 81.9% | 5 | y.re |
| 84.4% | 4 | y.im |
| 80.5% | 6 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 420 to 131 computations (68.8% saved)
| 3× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 3.2699657410642935e+54 | 4.8296485683860146e+55 |
| 17.0ms | 2.0478837825858303e-134 | 1.8995941669870858e-131 |
| 4.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 33.0ms | 256× | body | 256 | valid |
| 0.0ms | 4× | body | 256 | infinite |
Compiled 596 to 367 computations (38.4% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im)) |
5 calls:
| 333.0ms | y.im |
| 289.0ms | x.im |
| 117.0ms | x.re |
| 83.0ms | y.re |
| 63.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 66.8% | 5 | x.re |
| 74.4% | 13 | x.im |
| 81.9% | 5 | y.re |
| 84.1% | 4 | y.im |
| 79.5% | 6 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 348 to 110 computations (68.4% saved)
| 3× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 3.2699657410642935e+54 | 4.8296485683860146e+55 |
| 18.0ms | 2.0478837825858303e-134 | 1.8995941669870858e-131 |
| 4.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 33.0ms | 256× | body | 256 | valid |
| 1.0ms | 6× | body | 256 | infinite |
Compiled 594 to 365 computations (38.6% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (neg.f64 x.im) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) x.re) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (neg.f64 x.im)) |
(/.f64 x.re (/.f64 (fma.f64 y.im y.im (*.f64 y.re y.re)) y.re)) |
(/.f64 (*.f64 y.im x.im) (fma.f64 y.re y.re (*.f64 y.im y.im))) |
(/.f64 (+.f64 x.re (/.f64 x.im (/.f64 y.re y.im))) (hypot.f64 y.re y.im)) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
5 calls:
| 261.0ms | x.im |
| 137.0ms | x.re |
| 119.0ms | y.re |
| 103.0ms | y.im |
| 100.0ms | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 66.8% | 5 | x.re |
| 74.4% | 13 | x.im |
| 81.9% | 5 | y.re |
| 84.1% | 4 | y.im |
| 79.5% | 6 | (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
Compiled 337 to 108 computations (68% saved)
| 3× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 16.0ms | 3.2699657410642935e+54 | 4.8296485683860146e+55 |
| 26.0ms | 2.0478837825858303e-134 | 1.8995941669870858e-131 |
| 6.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 38.0ms | 256× | body | 256 | valid |
| 5.0ms | 12× | body | 256 | infinite |
Compiled 594 to 365 computations (38.6% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (*.f64 y.im y.im)) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
4 calls:
| 160.0ms | x.im |
| 87.0ms | y.im |
| 78.0ms | x.re |
| 49.0ms | y.re |
| Accuracy | Segments | Branch |
|---|---|---|
| 62.2% | 5 | x.re |
| 68.8% | 10 | x.im |
| 77.7% | 3 | y.re |
| 81.5% | 5 | y.im |
Compiled 251 to 80 computations (68.1% saved)
| 4× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 20.0ms | 2.210177616668567e+44 | 2.0562688156548004e+47 |
| 19.0ms | 4.9212148116222204e+39 | 1.0141719276545393e+41 |
| 2.0ms | 4.367581617170622e-78 | 4.693131189301501e-78 |
| 5.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 39.0ms | 288× | body | 256 | valid |
| 0.0ms | 1× | body | 256 | infinite |
Compiled 482 to 317 computations (34.2% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
4 calls:
| 148.0ms | x.im |
| 98.0ms | x.re |
| 76.0ms | y.im |
| 41.0ms | y.re |
| Accuracy | Segments | Branch |
|---|---|---|
| 63.0% | 6 | x.re |
| 68.6% | 10 | x.im |
| 77.7% | 3 | y.re |
| 81.5% | 5 | y.im |
Compiled 229 to 75 computations (67.2% saved)
| 4× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 20.0ms | 2.210177616668567e+44 | 2.0562688156548004e+47 |
| 15.0ms | 4.9212148116222204e+39 | 1.0141719276545393e+41 |
| 2.0ms | 4.367581617170622e-78 | 4.693131189301501e-78 |
| 5.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 38.0ms | 288× | body | 256 | valid |
| 0.0ms | 1× | body | 256 | infinite |
Compiled 482 to 317 computations (34.2% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
4 calls:
| 160.0ms | x.im |
| 58.0ms | x.re |
| 38.0ms | y.re |
| 38.0ms | y.im |
| Accuracy | Segments | Branch |
|---|---|---|
| 61.4% | 5 | x.re |
| 68.6% | 10 | x.im |
| 77.7% | 3 | y.re |
| 79.6% | 3 | y.im |
Compiled 218 to 72 computations (67% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 19.0ms | 2.210177616668567e+44 | 2.0562688156548004e+47 |
| 4.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 21.0ms | 160× | body | 256 | valid |
Compiled 346 to 217 computations (37.3% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
4 calls:
| 158.0ms | x.im |
| 73.0ms | y.im |
| 58.0ms | x.re |
| 34.0ms | y.re |
| Accuracy | Segments | Branch |
|---|---|---|
| 61.4% | 5 | x.re |
| 68.6% | 10 | x.im |
| 77.7% | 3 | y.re |
| 79.4% | 3 | y.im |
Compiled 207 to 69 computations (66.7% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 2.210177616668567e+44 | 2.0562688156548004e+47 |
| 5.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 18.0ms | 160× | body | 256 | valid |
Compiled 346 to 217 computations (37.3% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 y.im (*.f64 y.re y.re)) x.im)) |
(+.f64 (/.f64 x.re y.re) (/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im))) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
4 calls:
| 148.0ms | x.im |
| 98.0ms | x.re |
| 35.0ms | y.re |
| 33.0ms | y.im |
| Accuracy | Segments | Branch |
|---|---|---|
| 61.2% | 5 | x.re |
| 68.6% | 10 | x.im |
| 77.7% | 3 | y.re |
| 79.2% | 3 | y.im |
Compiled 196 to 66 computations (66.3% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 16.0ms | 2.210177616668567e+44 | 2.0562688156548004e+47 |
| 4.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 18.0ms | 160× | body | 256 | valid |
Compiled 346 to 217 computations (37.3% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) |
| Outputs |
|---|
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
(/.f64 x.re y.re) |
(+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) |
4 calls:
| 147.0ms | x.im |
| 94.0ms | y.re |
| 60.0ms | x.re |
| 30.0ms | y.im |
| Accuracy | Segments | Branch |
|---|---|---|
| 56.3% | 5 | x.re |
| 64.4% | 11 | x.im |
| 71.9% | 3 | y.re |
| 72.7% | 3 | y.im |
Compiled 163 to 62 computations (62% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 21.0ms | 2.210177616668567e+44 | 2.0562688156548004e+47 |
| 4.0ms | -0.6656288907115332 | -0.5588381149691475 |
| 23.0ms | 160× | body | 256 | valid |
Compiled 266 to 177 computations (33.5% saved)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
(/.f64 x.re y.re) |
(/.f64 (neg.f64 x.im) y.im) |
(/.f64 (neg.f64 x.im) y.re) |
(/.f64 (neg.f64 x.re) y.im) |
(/.f64 (neg.f64 x.re) y.re) |
(*.f64 x.im (/.f64 1 y.im)) |
(*.f64 x.im (/.f64 y.im (*.f64 y.re y.re))) |
(*.f64 x.im (/.f64 (/.f64 y.im y.re) y.re)) |
(*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)) |
(*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)) |
(/.f64 x.im (/.f64 y.re (/.f64 y.im y.re))) |
(/.f64 x.im (/.f64 (*.f64 y.re y.re) y.im)) |
(/.f64 x.re (/.f64 (*.f64 y.im y.im) y.re)) |
(/.f64 y.im (/.f64 (*.f64 y.re y.re) x.im)) |
(/.f64 (*.f64 x.im (/.f64 y.im y.re)) y.re) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.im y.im)) |
(/.f64 (*.f64 y.im x.im) (*.f64 y.re y.re)) |
(/.f64 (*.f64 y.re x.re) (*.f64 y.im y.im)) |
| Outputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.re y.re) |
(/.f64 x.im y.im) |
4 calls:
| 129.0ms | x.re |
| 86.0ms | x.im |
| 43.0ms | y.re |
| 31.0ms | y.im |
| Accuracy | Segments | Branch |
|---|---|---|
| 55.6% | 5 | x.re |
| 60.7% | 9 | x.im |
| 67.0% | 3 | y.re |
| 68.4% | 3 | y.im |
Compiled 141 to 58 computations (58.9% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 17.0ms | 2.210177616668567e+44 | 2.0562688156548004e+47 |
| 17.0ms | -1261391596358978300.0 | -930158829418991.9 |
| 30.0ms | 256× | body | 256 | valid |
Compiled 282 to 209 computations (25.9% saved)
Total -22.2b remaining (-54.7%)
Threshold costs -22.2b (-54.7%)
| Inputs |
|---|
(/.f64 x.im y.im) |
(/.f64 x.im y.re) |
(/.f64 x.re y.im) |
| Outputs |
|---|
(/.f64 x.im y.im) |
4 calls:
| 29.0ms | x.im |
| 3.0ms | y.re |
| 3.0ms | y.im |
| 3.0ms | x.re |
| Accuracy | Segments | Branch |
|---|---|---|
| 36.6% | 1 | x.re |
| 36.6% | 1 | x.im |
| 36.6% | 1 | y.re |
| 36.6% | 1 | y.im |
Compiled 33 to 23 computations (30.3% saved)
| 1× | egg-herbie |
| 40× | +-commutative |
| 34× | *-commutative |
| 14× | neg-mul-1 |
| 14× | neg-sub0 |
| 12× | sub-neg |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 167 | 2445 |
| 1 | 216 | 2445 |
| 2 | 232 | 2445 |
| 3 | 246 | 2445 |
| 4 | 255 | 2445 |
| 5 | 259 | 2445 |
| 6 | 260 | 2445 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -inf.0) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re))))) |
(if (<=.f64 y.re -140000000000000000626226939134163812352) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (if (<=.f64 y.re -231450785987831/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.re 399583814440447/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) (if (<=.f64 y.im 1198751443321341/399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 22000000000000001041849155059240437603968711733958148096) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 5421553194327985/51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 23999999999999999156738034342802144508331787743121113088) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 7544142416635639/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 44999999999999999780013282076507874806620531745424932864) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 2398813565731491/521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 84999999999999999559866692592958231805952) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 349999999999999991260683661440310445684555776) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 2398813565731491/521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 82000000000000003216400924870207573327872) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (if (<=.f64 y.im 589999999999999964895053525617122227242663936) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))))) |
(if (<=.f64 y.im -5584463537939415/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 230000000000000004443498729351904554905501696) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (<=.f64 y.im -1261007895663739/2251799813685248) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 529999999999999991293501688139003680239124480) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 529999999999999991293501688139003680239124480) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 1500000000000000053092258565332002016984039424) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (<=.f64 y.im -1850000000000000) (/.f64 x.im y.im) (if (<=.f64 y.im 10500000000000000054733159900266663744712474624) (/.f64 x.re y.re) (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
| Outputs |
|---|
(/.f64 (fma.f64 x.im (/.f64 y.im (hypot.f64 y.re y.im)) (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im)) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 (/.f64 y.re (hypot.f64 y.re y.im)) x.re))) |
(*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) (*.f64 x.re (/.f64 y.re (hypot.f64 y.re y.im))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)))) (if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (/.f64 (fma.f64 x.im 1 (/.f64 x.re (/.f64 (hypot.f64 y.re y.im) y.re))) (hypot.f64 y.re y.im))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (*.f64 (fma.f64 x.re y.re (*.f64 y.im x.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)))) (if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (*.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (pow.f64 (hypot.f64 y.re y.im) -2)) (if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im))))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -inf.0) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re)) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (if (<=.f64 (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.im x.im) (*.f64 x.re y.re)) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re))))) |
(if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -inf.0) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)))) (if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) -5043456793138493/5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448) (/.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)) (fma.f64 y.re y.re (*.f64 y.im y.im))) (if (<=.f64 (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) 20000000000000000323456785900191669561923454243064936219351155259210830706007157687226704499288107285763810660663679263023264344934985834790648308005091295168868698197129205191161878464985997761417827125414132937520722989422036627287210875071738030889333260550144) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (hypot.f64 y.re y.im))) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im))))))) |
(if (<=.f64 y.re -140000000000000000626226939134163812352) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (if (<=.f64 y.re -231450785987831/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.re 399583814440447/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im)) x.re))))) |
(if (<=.f64 y.re -140000000000000000626226939134163812352) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (if (<=.f64 y.re -231450785987831/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.re 399583814440447/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (+.f64 (/.f64 x.im y.im) (/.f64 (/.f64 x.re (/.f64 y.im y.re)) y.im)) (*.f64 (/.f64 1 (hypot.f64 y.re y.im)) (+.f64 x.re (/.f64 x.im (/.f64 (hypot.f64 y.re y.im) y.im))))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (/.f64 (neg.f64 (+.f64 (*.f64 (/.f64 x.re y.im) y.re) x.im)) (hypot.f64 y.re y.im)) (if (<=.f64 y.im 1198751443321341/399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 22000000000000001041849155059240437603968711733958148096) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (/.f64 (neg.f64 (+.f64 x.im (*.f64 y.re (/.f64 x.re y.im)))) (hypot.f64 y.re y.im)) (if (<=.f64 y.im 1198751443321341/399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 22000000000000001041849155059240437603968711733958148096) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) (hypot.f64 y.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (/.f64 (-.f64 (*.f64 (/.f64 x.re y.im) (neg.f64 y.re)) x.im) (hypot.f64 y.re y.im)) (if (<=.f64 y.im 1198751443321341/399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 22000000000000001041849155059240437603968711733958148096) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) (hypot.f64 y.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 5421553194327985/51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 23999999999999999156738034342802144508331787743121113088) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (+.f64 (/.f64 x.re (/.f64 y.im y.re)) x.im) (hypot.f64 y.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (if (<=.f64 y.im 5421553194327985/51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 23999999999999999156738034342802144508331787743121113088) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (/.f64 (+.f64 x.im (/.f64 x.re (/.f64 y.im y.re))) (hypot.f64 y.re y.im))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 7544142416635639/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 44999999999999999780013282076507874806620531745424932864) (/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im)))))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (if (<=.f64 y.im 7544142416635639/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 44999999999999999780013282076507874806620531745424932864) (/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im)))))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 2398813565731491/521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 84999999999999999559866692592958231805952) (/.f64 (*.f64 y.im x.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 349999999999999991260683661440310445684555776) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (if (<=.f64 y.im 2398813565731491/521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 84999999999999999559866692592958231805952) (/.f64 (*.f64 x.im y.im) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))) (if (<=.f64 y.im 349999999999999991260683661440310445684555776) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))))))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 2398813565731491/521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 82000000000000003216400924870207573327872) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (if (<=.f64 y.im 589999999999999964895053525617122227242663936) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (if (<=.f64 y.im 2398813565731491/521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (if (<=.f64 y.im 82000000000000003216400924870207573327872) (/.f64 y.im (/.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) x.im)) (if (<=.f64 y.im 589999999999999964895053525617122227242663936) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))))))) |
(if (<=.f64 y.im -5584463537939415/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 230000000000000004443498729351904554905501696) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re)) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (or (<=.f64 y.im -5584463537939415/9007199254740992) (not (<=.f64 y.im 230000000000000004443498729351904554905501696))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im (/.f64 y.re x.im)) y.re))) |
(if (<=.f64 y.im -1261007895663739/2251799813685248) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 529999999999999991293501688139003680239124480) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (or (<=.f64 y.im -1261007895663739/2251799813685248) (not (<=.f64 y.im 529999999999999991293501688139003680239124480))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (+.f64 (/.f64 x.re y.re) (/.f64 (/.f64 y.im y.re) (/.f64 y.re x.im)))) |
(if (<=.f64 y.im -5854679515581645/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 529999999999999991293501688139003680239124480) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (or (<=.f64 y.im -5854679515581645/9007199254740992) (not (<=.f64 y.im 529999999999999991293501688139003680239124480))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (+.f64 (/.f64 x.re y.re) (*.f64 (/.f64 x.im y.re) (/.f64 y.im y.re)))) |
(if (<=.f64 y.im -5404319552844595/9007199254740992) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))) (if (<=.f64 y.im 1500000000000000053092258565332002016984039424) (/.f64 x.re y.re) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 y.re y.im) (/.f64 x.re y.im))))) |
(if (or (<=.f64 y.im -5404319552844595/9007199254740992) (not (<=.f64 y.im 1500000000000000053092258565332002016984039424))) (+.f64 (/.f64 x.im y.im) (*.f64 (/.f64 x.re y.im) (/.f64 y.re y.im))) (/.f64 x.re y.re)) |
(if (<=.f64 y.im -1850000000000000) (/.f64 x.im y.im) (if (<=.f64 y.im 10500000000000000054733159900266663744712474624) (/.f64 x.re y.re) (/.f64 x.im y.im))) |
(/.f64 x.im y.im) |
Compiled 953 to 433 computations (54.6% saved)
| 1842× | associate-/r/ |
| 1720× | associate-*r/ |
| 1696× | associate-*l/ |
| 1564× | associate-/r* |
| 1458× | associate-*l/ |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 65 |
| 1 | 285 | 61 |
| 2 | 4080 | 61 |
| 0 | 14 | 79 |
| 1 | 284 | 73 |
| 2 | 3557 | 73 |
| 0 | 853 | 23431 |
| 1 | 2392 | 21533 |
| 0 | 15 | 93 |
| 1 | 338 | 89 |
| 2 | 5334 | 89 |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
Compiled 589 to 173 computations (70.6% saved)
Compiled 889 to 215 computations (75.8% saved)
Loading profile data...